Open marcialwushu opened 5 years ago
https://skoop.dev/blog/2019/03/09/WordPress_and_HTTPS-termination_proxies/
The other solution is to use proper apache module (mod_rpaf2, mod_remoteip) which will set HTTPS variable (and other like REMOTE_ADDR) based on what scheme was used to connect to proxy. That won't require any changes in apps or such htaccess hacks.
WordPress e proxies de terminação HTTPS
Um blog para o qual estou escrevendo estava procurando um novo lugar para hospedar seu site. Como temos um bom cluster com Rancher funcionando, me ofereci para hospedar o site. É o WordPress, então PHP, então quão difícil poderia ser, certo?
Passei algumas horas migrando tudo. A migração inicial para o Docker não foi tão difícil. Há uma ótima imagem oficial do WordPress para o Docker , o que torna extremamente fácil configurar um novo site WordPress no Docker.
A próxima coisa é lidar com uploads de arquivos. Usando o plug-in do-spaces-sync, isso foi facilmente configurado para usar os DigitalOcean Spaces . Demorou um tempo para enviar todas as imagens do antigo wp-content / uploads para o Spaces, mas uma vez que isso foi feito, eu tinha que trabalhar imediatamente depois de configurá-lo. Até agora, toda essa migração foi uma brisa.
Até que eu liguei o DNS e apontei para a nossa nova hospedagem. Eu imediatamente fui pego em um loop de redirecionamento infinito, e eu não tinha ideia do porquê. Passei horas desligando plugins, ligando-os novamente. Depurando tudo, observando logs. Eu não consegui descobrir. Nos cabeçalhos encontrei um cabeçalho dizendo que o redirecionamento veio do WordPress:
Eventualmente, eu tentei explicar o problema no canal #wordpress na slack PHPNL e como eu estou digitando minha explicação, algo me ocorre ...
Nossa configuração Rancher possui um balanceador de carga que finaliza o HTTPS e encaminha uma solicitação interna para o contêiner usando http. Mas no WordPress, configurei o siteurl para ser
https://
. Então o WordPress recebe um pedido usando http, descobre que deve estar usando https e redireciona. Isso faz com que o loop de redirecionamento infinito!Claro, eu não fui o primeiro a encontrar esse problema. Depois de saber qual era o problema, pesquisar na Internet rapidamente me deu a solução. No Wordpress Codex, é claro . A única coisa que eu precisava fazer era adicionar uma única linha ao meu arquivo .htaccess:
Uma vez que fiz isso, reconstruí meus containers e os implantei para o Rancher, o problema foi resolvido. De repente, tudo funcionou.