Eu verifiquei algumas outras respostas para perguntas semelhantes, bem como tutoriais sobre DigitalOcean, etc., sem sucesso. Desculpe pelo que é provavelmente um problema muito óbvio - sou novo nisso.
Essencialmente, preciso configurar redirecionamentos para que http: //, link . e link . todos redirecionam para https: //.
Atualmente, https: // funciona bem e http: // redireciona para https: //. Preciso redirecionar o tráfego www porque o certificado SSL é configurado apenas para não www. No entanto, quando tentei adicionar outro bloco de servidor à configuração para redirecionar www (http e https) para https: //, o servidor fecha a conexão nas 4 variantes.
Aqui está minha configuração:
# HTTP - redirect to HTTPS
server {
listen 80;
server_name www.example.com example.com;
return 301 https://example.com$request_uri;
}
# HTTPS www - redirect to non-www RESETS CONNECTION
#server {
# listen 443;
# server_name www.example.com;
# return 301 https://example.com$request_uri;
#}
# HTTPS — proxy all requests to the Node app
server {
# Enable HTTP/2
listen 443 ssl http2;
server_name example.com;
# Use the Let’s Encrypt certificates
ssl_certificate /etc/not/my/path/live/example.com/fullchain.pem;
ssl_certificate_key /etc/not/my/path/live/example.com/privkey.pem;
# Include the SSL configuration from cipherli.st
include snippets/ssl-params.conf;
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://0.0.0.0:2368/;
proxy_ssl_session_reuse off;
proxy_set_header Host $http_host;
proxy_cache_bypass $http_upgrade;
proxy_redirect off;
}
}
Alguém pode me dizer o que estou fazendo errado? Mais uma vez eu sei que provavelmente é dolorosamente óbvio, mas eu simplesmente não consigo fazer isso funcionar. Eu deveria estar fazendo isso com algo diferente de um redirecionamento NGINX?