worker_processes auto; # Enable upgrading of connection (and websocket proxying) depending on the # presence of the upgrade field in the client request header map \$http_upgrade \$connection_upgrade { default upgrade; '' close; } # Create an upstream alias to where we've set daphne to bind to upstream uwsgi { server 127.0.0.1:8050; } upstream daphne { server 127.0.0.1:8051; } http { ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; server { listen 80; listen 443 ssl; # If you have a domain name, this is where to add it server_name localhost *; keepalive_timeout 70; ssl_certificate /etc/tower/tower.crt; ssl_certificate_key /etc/tower/tower.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!MD5; location /favicon.ico { alias /var/lib/awx/public/static/favicon.ico; } location /static { alias /var/lib/awx/public/static; } location /websocket { # Pass request to the upstream alias proxy_pass http://daphne; # Require http version 1.1 to allow for upgrade requests proxy_http_version 1.1; # We want proxy_buffering off for proxying to websockets. proxy_buffering off; # http://en.wikipedia.org/wiki/X-Forwarded-For proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # enable this if you use HTTPS: proxy_set_header X-Forwarded-Proto https; # pass the Host: header from the client for the sake of redirects proxy_set_header Host $http_host; # We've set the Host header, so we don't need Nginx to muddle # about with redirects proxy_redirect off; # Depending on the request value, set the Upgrade and # connection headers proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; } location / { uwsgi_pass uwsgi; include /etc/nginx/uwsgi_params; #proxy_pass http://uwsgi; #proxy_http_version 1.1; #proxy_buffering off; #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #proxy_set_header X-Forwarded-Proto https; #proxy_set_header Host $http_host; #proxy_redirect off; #proxy_set_header Upgrade $http_upgrade; #proxy_set_header Connection $connection_upgrade; } } }