Eu tenho um problema com redirecionamentos 301 no Nginx. Ele sempre redireciona para uma URL com sua porta local.
A situação é a seguinte: o site está sendo executado no Cloudflare, https completo. CF envia solicitações http para o servidor onde o verniz as aceita. O verniz então passa o pedido para o nginx, que manipula o resto junto com o FPM.
O Nginx está sendo executado na porta 8080. Eu crio um redirecionamento 301 no Nginx como normalmente faço:
location = /url1 {
return 301 /url2;
}
Em seguida, o Nginx redireciona para o URL, mas adiciona o nome do host original & porta está sendo executado em (8080). Então eu configurei port_in_redirect como off na configuração do servidor. Isso funciona pela metade. Ele redirecionará um URL http para https (sem mencionar a porta 8080). Ele irá redirecionar um URL https para http, loop.
Como posso ter certeza de que isso não aconteça? Gostaria de saber se é possível conhecer o esquema em que a Cloudflare está atendendo a solicitação também.
Tags redirect nginx varnish cloudflare