Created
October 4, 2016 05:29
-
-
Save cookie-ag/059a3323a2c08221250f453f1823fe02 to your computer and use it in GitHub Desktop.
Nginx with HTTPS
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# HTTP - redirect all requests to HTTPS: | |
server { | |
listen 80; | |
listen [::]:80 default_server ipv6only=on; | |
return 301 https://$host$request_uri; | |
} | |
# HTTPS - proxy requests on to local Node.js app: | |
server { | |
listen 443; | |
server_name your_domain_name; | |
ssl on; | |
# Use certificate and key provided by Let's Encrypt: | |
ssl_certificate /etc/letsencrypt/live/your_domain_name/fullchain.pem; | |
ssl_certificate_key /etc/letsencrypt/live/your_domain_name/privkey.pem; | |
ssl_session_timeout 5m; | |
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; | |
ssl_prefer_server_ciphers on; | |
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH'; | |
# Pass requests for / to localhost:8080: | |
location / { | |
proxy_set_header X-Real-IP $remote_addr; | |
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | |
proxy_set_header X-NginX-Proxy true; | |
proxy_pass http://localhost:8080/; | |
proxy_ssl_session_reuse off; | |
proxy_set_header Host $http_host; | |
proxy_cache_bypass $http_upgrade; | |
proxy_redirect off; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment