Aparentemente, usar a variável $host
é a maneira de fazer isso (obrigado @gparent). Acabei de testar novamente e funciona.
Eu tenho uma configuração nginx semelhante a esta:
server {
server_name my-english-site.com my-french-site.com;
listen 0.0.0.0:80;
rewrite ^ https://$server_name$request_uri? permanent;
}
server {
listen 0.0.0.0:443 ssl;
server_name my-english-site.com my-french-site.com;
}
Quando alguém acessa o link , ele redireciona para link , porque a diretiva de reescrita usa o primeiro servidor na diretiva $server_name
.
Eu tentei substituir $server_name
por $host
, esperando que ele usasse o valor do cabeçalho de solicitação Host
. Mas ainda redireciona para o URL em inglês.
Como posso receber solicitações não HTTPS redirecionadas para os URLs HTTPS correspondentes?
Obrigado!
Aparentemente, usar a variável $host
é a maneira de fazer isso (obrigado @gparent). Acabei de testar novamente e funciona.
Tags nginx