NGiNX Redirect all Traffic to HTTPS

MD
S
Markdown

Basic Nginx configuration to route all non HTTPS traffic (80) to 443 SSL. Server rules in: /etc/nginx/sites-available/default

server { listen 80; listen [::]:80; server_name mysite.org www.mysite.org; return 301 https://www.coderecipes.org$request_uri;

location / {
    proxy_pass http://localhost:1111/;
    proxy_redirect off;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;
}

}

server { server_name mysite.org www.mysite.org; listen 443 ssl; # managed by Certbot ssl_certificate /etc/letsencrypt/live/coderecipes.org/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/coderecipes.org/privkey.pem; # managed by Certbot include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot ssl_dhparam /etc/ssl/certs/dhparam.pem;

location / {
    proxy_pass http://localhost:1111/;
    proxy_redirect off;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;
}

}

Created on 9/18/2017