Too Many Redirects — Loop de redirecionamento no WordPress

Time Full Services Time Full Services
Nome do erro Too Many Redirects — Loop de redirecionamento no WordPress
Severidade Atenção
Desde WordPress 2.0
Descrição O navegador detecta que está sendo redirecionado infinitamente e interrompe a requisição. Geralmente causado por configurações incorretas de URL.

O que é o erro Too Many Redirects?

O erro “ERR_TOO_MANY_REDIRECTS” ou “Too many redirects” ocorre quando o navegador detecta que está sendo redirecionado infinitamente entre páginas. O WordPress redireciona para uma URL, essa URL redireciona para outra, que redireciona de volta para a primeira — criando um loop que nunca termina.

O navegador interrompe esse processo após um número determinado de redirecionamentos (geralmente 20) e exibe a mensagem de erro. Isso impede completamente o acesso ao site.

Causas mais comuns

URLs incorretas no banco de dados

A causa mais frequente é ter a URL do site configurada com http:// no banco de dados enquanto o servidor força o uso de https:// (ou vice-versa). O WordPress redireciona para https, mas a URL salva no banco aponta de volta para http, criando o loop.

Configuração incorreta do SSL/HTTPS

Quando o SSL está configurado incorretamente — especialmente em CDNs como o Cloudflare — pode ocorrer um loop entre o servidor de origem e o CDN. Isso acontece principalmente quando o modo SSL do Cloudflare está configurado como “Flexible” em vez de “Full”.

.htaccess com regras conflitantes

Múltiplas regras de redirecionamento no .htaccess que se contradizem também podem causar loops. Isso é comum quando plugins de SEO ou segurança adicionam regras sem verificar se já existem regras similares.

Corrigindo as URLs no banco de dados

O primeiro passo é verificar e corrigir as URLs salvas no banco de dados. Acesse o phpMyAdmin, selecione o banco de dados do WordPress e execute:

SELECT option_name, option_value
FROM wp_options
WHERE option_name IN ('siteurl', 'home');

Ambos os valores devem começar com https:// se o site usa SSL. Para corrigir:

UPDATE wp_options
SET option_value = 'https://seusite.com'
WHERE option_name = 'siteurl' OR option_name = 'home';

Forçando as URLs via wp-config.php

Uma solução rápida é forçar as URLs corretas diretamente no wp-config.php, o que sobrescreve os valores do banco de dados:

define('WP_HOME',    'https://seusite.com');
define('WP_SITEURL', 'https://seusite.com');

Após verificar que o site voltou ao normal, você pode remover essas linhas e corrigir os valores diretamente no banco de dados.

Corrigindo a configuração do Cloudflare

Se o site usa Cloudflare, acesse o painel do Cloudflare, vá em SSL/TLS → Overview e altere o modo de encriptação de “Flexible” para “Full” ou “Full (Strict)”. O modo Flexible é a causa mais comum de loops de redirecionamento em sites com HTTPS ativo.

Limpando cookies e cache

Após corrigir o problema, limpe os cookies do navegador e o cache do site. Redirecionamentos podem ser armazenados em cache pelo navegador ou por plugins de cache, fazendo o erro persistir mesmo após a correção. No WordPress, acesse o painel do seu plugin de cache e clique em “Limpar cache”.

Causa

O erro Too Many Redirects ocorre quando o WordPress entra em um loop infinito de redirecionamentos. As causas mais comuns são: URLs incorretas no banco de dados (siteurl e home com http enquanto o servidor força https), configuração incorreta do SSL/HTTPS, plugin de cache com redirecionamento em loop, ou código incorreto no .htaccess que cria redirecionamento circular.

Como resolver

Limpe os cookies e cache do navegador e tente novamente.

Acesse o phpMyAdmin e verifique os valores de siteurl e home na tabela wp_options:

SELECT option_value FROM wp_options WHERE option_name = 'siteurl';
Se estiver usando HTTPS, garanta que ambos comecem com https://:
UPDATE wp_options SET option_value = 'https://seusite.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://seusite.com' WHERE option_name = 'home';
Adicione temporariamente ao wp-config.php para forçar as URLs:
define('WP_HOME', 'https://seusite.com');
define('WP_SITEURL', 'https://seusite.com');
Verifique o .htaccess e remova qualquer regra de redirecionamento duplicada.

Desative todos os plugins via FTP renomeando a pasta plugins.

Se usar CDN ou proxy (Cloudflare), verifique se o modo SSL está como "Full" e não "Flexible".

Após resolver, remova as linhas do wp-config.php adicionadas no passo 4.

PHP
define('WP_HOME',    'https://seusite.com');
define('WP_SITEURL', 'https://seusite.com');

Seja PRO.

Tenha acesso a snippets de código premium — PHP, JavaScript, CSS e HTML prontos para usar em seus projetos.

Conhecer o plano Pro →