Eu vi duas maneiras pelas quais o nginx é usado para redirecionar http para https:
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com
location / {
return 301 https://$host$request_uri;
}
}
e
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com
return 301 https://$host$request_uri;
}
Qual é a diferença entre estes? Existe uma razão para usar um ou outro?
A especificação de um local no primeiro exemplo indica que você pode ter locais ou caminhos que não devem ser redirecionados para o ouvinte HTTPS, por algum motivo.
O segundo exemplo deve levar todo o tráfego para o nome de host fornecido e redirecioná-lo.