[FIX] Loop infinito no WordPress em máquina virtual

Esse é um erro muito específico, para uma configuração do WordPress também bem específica, e pode ser difícil encontrar respostas para esse problema.

Bom, pra começar, uma explicação do que eu presenciei. O WordPress estava configurado com o DNS correto, utilizando HTTPS e todo o site parecia estar sendo apresentado corretamente.

Porém, quando se tentava acessar o painel de administrador (wp-admin), o navegador retornava a mensagem de erro (ERR_TOO_MANY_REDIRECTS):

Configuração de Hospedagem do WordPress

Para ilustrar melhor, e ajudar quem posso estar passando pelo mesmo problema, essa era a configuração do site:

  • DNS gerenciado pelo Google Cloud, utilizando o Cloud DNS;
  • Máquina Virtual com WordPress de um modelo pré-existente, utilizando o Compute Engine;
  • Certificado OpenSSL gerenciado pelo próprio Google Cloud;
  • Configuração de rede utilizando o Load Balancing;

O tutorial dinâmico para essa configuração pode ser encontrado direto na plataforma do Google Cloud;

Solução para o problema

Isso ocorre devido a uma configuração típica com HTTP e HTTPS para o frontend e HTTP para o backend. O que chamamos de SSL offloading.

Nesse caso, o seu código backend não está detectando que o cliente conectado ao Load Balancer usa HTTPS.

O cabeçalho HTTP_X_FORWARDED_PROTO indica o protocolo de conexão do cliente.

Você pode facilmente corrigir esse problema acessando o arquivo “wp-config.php” e adicionando o código abaixo ao final do arquivo (antes do último “require_once”):

if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
{
       $_SERVER['HTTPS'] = 'on';
}

E é isso, problema corrigido! Espero que tenha ajudado.

Visite nossos outros tutoriais, para conhecer ainda mais sobre mundo da tecnologia.

Share this article
Shareable URL
Prev Post

[FIX] Bluetooth não inicia em update Linux, kernel 6.9.1-1

Next Post

[HOW-TO] Usar apps Android no Linux com Android Studio

Leave a Reply

Your email address will not be published. Required fields are marked *

Read next