TrueURL

Ferramenta de redirecionamento grátis

Detector de loop de redirecionamento

Quando o navegador diz que a página “redirecionou você muitas vezes”, o site está fazendo o navegador andar em círculos. O TrueURL segue os redirecionamentos até o loop se fechar e mostra todas as URLs envolvidas.

O que é um loop de redirecionamento?

Um loop de redirecionamento acontece quando a URL A redireciona para a URL B, e a B, diretamente ou passando por outros saltos, redireciona de volta para a A. Os navegadores seguem cerca de 20 redirecionamentos e depois desistem com um erro: ERR_TOO_MANY_REDIRECTS no Chrome e no Edge (com a mensagem redirecionou você muitas vezes), A página não está redirecionando corretamente no Firefox ou um aviso de redirecionamentos em excesso no Safari. Os mecanismos de busca não conseguem indexar uma página presa em um loop.

Como o TrueURL detecta loops

O TrueURL registra cada URL que requisita, junto com o método da requisição e os cookies que tem naquele momento. Quando um salto leva de volta a uma URL já requisitada no mesmo estado, a cadeia nunca vai terminar, e o resultado destaca o salto em que o loop se fecha.

Como o TrueURL guarda cookies como um navegador, ele consegue distinguir um loop real de uma troca normal de cookies, em que o site define um cookie e manda você de volta para a mesma URL uma única vez. Se o estado muda a cada passagem, a cadeia continua até o limite de Máximo de saltos das Configurações avançadas (no máximo 50). Uma cadeia que atinge o limite geralmente também é um loop infinito, por exemplo um que acrescenta um novo parâmetro de consulta a cada salto.

Causas comuns de loops de redirecionamento

  • HTTP e HTTPS atrás de um proxy ou CDN: a CDN se conecta ao seu servidor via HTTP (como no modo SSL Flexible da Cloudflare), enquanto o servidor redireciona toda requisição HTTP para HTTPS. O navegador pede HTTPS de novo, a CDN busca HTTP de novo, e assim por diante. Use o modo Full (strict) ou deixe apenas uma camada cuidar do redirecionamento HTTPS.
  • Regras de www conflitantes: uma regra adiciona o www enquanto outra, muitas vezes no CMS ou no painel da hospedagem, o remove.
  • Regras de barra final conflitantes: o servidor adiciona uma barra e a aplicação a remove.
  • Configurações de endereço do CMS: no WordPress, por exemplo, um Endereço do WordPress (URL) ou Endereço do site (URL) que não corresponde ao domínio ou ao protocolo em que o site é realmente servido.
  • Redirecionamentos de login, consentimento e região: uma página envia os visitantes sem determinado cookie para uma página de login, de consentimento ou de escolha de país, que os manda de volta, mas o cookie nunca é definido ou nunca é aceito.

Como corrigir um loop de redirecionamento

  1. Verifique a URL aqui e anote quais URLs se repetem e qual salto manda você de volta.
  2. Olhe os cabeçalhos de resposta desse salto, como Server, Via, CF-Ray ou X-Powered-By, para ver qual camada enviou o redirecionamento: a CDN, o servidor web ou a aplicação.
  3. Corrija ou desative essa regra específica e verifique de novo. Altere uma camada de cada vez.
  4. Antes de testar no seu navegador, limpe o cache e os cookies dele para o site. Redirecionamentos 301 em cache e cookies antigos podem manter um loop ativo mesmo depois de corrigido.

Guias

Perguntas frequentes

O que significa ERR_TOO_MANY_REDIRECTS?

É o erro do Chrome para uma cadeia de redirecionamentos que não terminou depois de 20 redirecionamentos, o que quase sempre é um loop: as regras de redirecionamento do site se contradizem. Verifique a URL acima para ver quais URLs se repetem.

Um loop de redirecionamento pode afetar só alguns visitantes?

Sim. Loops que dependem de cookies, idioma, localização ou dispositivo só atingem os visitantes nessa situação. Reproduza-os com as Configurações avançadas: adicione o cookie, um cabeçalho Accept-Language ou um User-Agent de celular e verifique de novo. Loops que dependem da localização do visitante não podem ser reproduzidos, porque a requisição sempre parte da rede da Cloudflare.

Por que limpar os cookies resolve o loop no meu navegador?

Nesse caso, o loop dependia de cookies: um cookie antigo ou conflitante fazia o site mandar você de um lado para o outro. Limpar os cookies zera o seu estado, mas o bug continua lá para todo visitante que receber o mesmo cookie. Use o campo Cookies das Configurações avançadas para reproduzi-lo aqui.

Por que o TrueURL encontra um loop se a página funciona no meu navegador?

O seu navegador pode estar logado, ter cookies de consentimento ou ter uma entrada de HSTS ou um redirecionamento em cache que pula um dos saltos. O TrueURL começa sem cookies e sem histórico, como alguém que visita o site pela primeira vez ou um rastreador. Se ele encontra um loop, provavelmente os novos visitantes e os rastreadores também caem nele, a menos que o site trate de forma diferente as requisições vindas de data centers.

Qual é a diferença entre um loop e atingir o Máximo de saltos?

Um loop significa que o TrueURL voltou a uma URL que já tinha requisitado no mesmo estado, então a cadeia nunca vai terminar. Atingir o Máximo de saltos significa que ele parou depois do número de redirecionamentos configurado sem encontrar uma repetição exata. Essa cadeia talvez terminasse em algum momento, mas uma cadeia tão longa é um problema de qualquer forma. Você pode aumentar o Máximo de saltos para 50 para ver mais adiante.

Uma CDN pode causar um loop de redirecionamento?

Sim, é uma das causas mais comuns. Se a CDN fala com o seu servidor via HTTP enquanto o servidor força o HTTPS, ou se a CDN e o servidor redirecionam entre www e sem www em direções opostas, os dois ficam jogando cada requisição de um lado para o outro. Os cabeçalhos de resposta de cada salto mostram qual camada respondeu.