| gzip on; |
| gzip_disable "msie6"; |
| gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript image/svg+xml; |
| |
| # from: https://docs.gunicorn.org/en/latest/deploy.html |
| upstream app_server { |
| # fail_timeout=0 means we always retry an upstream even if it failed |
| # to return a good HTTP response |
| |
| # for UNIX domain socket setups |
| server unix:/tmp/gunicorn.sock fail_timeout=0; |
| |
| # for a TCP configuration |
| # server 192.168.0.7:8000 fail_timeout=0; |
| } |
| |
| server { |
| |
| listen 80; |
| server_name testdrive.usecustos.org www.testdrive.usecustos.org; |
| return 301 https://testdrive.usecustos.org$request_uri; |
| } |
| |
| server { |
| listen 8080; |
| |
| root /usr/share/nginx/html; |
| |
| location ~ ^/(css|js)/ { |
| # These assets include a digest in the filename, so they will never change |
| expires max; |
| } |
| |
| location ~* ^.+\.(html|htm)$ { |
| # Very short caching time to ensure changes are immediately recognized |
| expires 5m; |
| } |
| |
| # from: https://docs.gunicorn.org/en/latest/deploy.html |
| location / { |
| # checks for static file, if not found proxy to app |
| try_files $uri @proxy_to_app; |
| } |
| |
| location @proxy_to_app { |
| proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; |
| proxy_set_header X-Forwarded-Proto $scheme; |
| proxy_set_header Host $http_host; |
| # we don't want nginx trying to do something clever with |
| # redirects, we set the Host: header above already. |
| proxy_redirect off; |
| proxy_pass http://app_server; |
| } |
| } |
| |
| server { |
| listen 443 ssl; |
| listen [::]:443 ssl; |
| |
| ssl_certificate /etc/nginx/fullchain.pem; |
| ssl_certificate_key /etc/nginx/privkey.pem; |
| |
| root /usr/share/nginx/html; |
| |
| location ~ ^/(css|js)/ { |
| # These assets include a digest in the filename, so they will never change |
| expires max; |
| } |
| |
| location ~* ^.+\.(html|htm)$ { |
| # Very short caching time to ensure changes are immediately recognized |
| expires 5m; |
| } |
| |
| # from: https://docs.gunicorn.org/en/latest/deploy.html |
| location / { |
| # checks for static file, if not found proxy to app |
| try_files $uri @proxy_to_app; |
| } |
| |
| location @proxy_to_app { |
| proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; |
| proxy_set_header X-Forwarded-Proto $scheme; |
| proxy_set_header Host $http_host; |
| # we don't want nginx trying to do something clever with |
| # redirects, we set the Host: header above already. |
| proxy_redirect off; |
| proxy_pass http://app_server; |
| } |
| } |