worker_processes 1; events { worker_connections 1024; } http { server { server_name public.purplebirdman.com; location / { proxy_pass http://public_web; proxy_set_header Host $host; } } server { server_name movies.purplebirdman.com; location / { proxy_pass http://public_movies_web; proxy_set_header Host $host; } } server { server_name go.purplebirdman.com; location / { proxy_pass http://go_httpd; proxy_set_header Host $host; } location /ws { proxy_pass http://go_socket:3000; # websocket magic proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $host; } } # catch-all server for both http and https server { listen *:80 default_server; listen *:443 default_server; server_name _; # Your SSL configuration #ssl_certificate /etc/nginx/ssl/example.com/ssl-bundle.crt; #ssl_certificate_key /etc/nginx/ssl/example.com/example.com.key; # Redirect to canonical site #rewrite ^/(.*)$ http://example.com/$1 permanent; } }