Resposta direta

Uma cadeia de redirecionamento é vários redirecionamentos em sequência (A → B → C); um loop de redirecionamento é uma cadeia que volta para uma URL que já visitou, então o navegador para com "muitos redirecionamentos". Para corrigir qualquer um dos casos, siga a URL para ver cada etapa e, em seguida, aponte o primeiro redirecionamento diretamente para a URL final e remova a regra que envia o tráfego de volta.

Etapa 1: Rastreie a URL#

Insira a URL no Redirect Checker. Ele lista cada etapa com seu código de status e sinaliza uma cadeia, uma etapa sobre HTTP simples, um redirecionamento temporário onde deveria haver um permanente e um loop. Você também pode rastrear a partir de um terminal:

bashcurl -sIL http://old-site.com/pricing | grep -iE '^(HTTP|location)'

HTTP/1.1 301 Moved Permanently
location: https://old-site.com/pricing
HTTP/2 301
location: https://www.old-site.com/pricing
HTTP/2 301
location: https://new-site.com/pricing
HTTP/2 200

Este exemplo é uma cadeia de três etapas. Se as mesmas linhas de location se repetirem até o curl parar com "Maximum redirects followed", isso é um loop.

Etapa 2: Achate uma cadeia em uma única etapa#

  1. Anote a URL final, aquela que responde com 200.
  2. No RedirHub, abra o link da primeira URL em Links e defina seu destino para essa URL final, com https:// e o host correto (com www ou sem). Para alterar muitos links de uma vez, selecione-os e use a barra em massa, ou importe um CSV.
  3. Mantenha os redirecionamentos intermediários se outros sites ainda apontarem para eles, mas direcione cada um deles diretamente para a URL final também.
  4. Rastreie a URL novamente. Você deve ver um 301 e, em seguida, um 200.

Cada salto extra adiciona uma viagem de ida e volta completa antes de a página começar a carregar, e o Google segue apenas um número limitado de saltos antes de desistir de uma URL, portanto o objetivo é um único salto.

Etapa 3: Descubra o que causa um loop#

Loops de redirecionamento comuns e suas correções
O que você vêCauseFix
http → https → http → https …Uma regra força HTTPS enquanto outra (muitas vezes no CMS ou na CDN) envia o tráfego de volta para HTTP.Mantenha uma regra HTTPS e remova a outra. A URL do site no CMS deve começar com https://.
www → sem www → www …Dois sistemas discordam sobre o host canônico; por exemplo, o registrador encaminha para www e o site redireciona para o domínio sem o www.Escolha um host. Defina todos os redirecionamentos, e a própria configuração de URL do site, para esse host.
Fica em loop apenas atrás do CloudflareO modo SSL/TLS é Flexible: o Cloudflare fala HTTP com a origem, a origem redireciona para HTTPS e o Cloudflare solicita via HTTP novamente.Defina o SSL/TLS do Cloudflare como Full (strict) quando a origem tiver um certificado válido.
old-site.com → old-site.com/new → old-site.com/new …Um redirecionamento de domínio inteiro aponta para um caminho no mesmo domínio, então o destino corresponde novamente ao redirecionamento.Redirecione para um host diferente ou substitua o redirecionamento de domínio inteiro por links de caminho para os URLs que precisam ser movidos.
A → B → ADois redirecionamentos de caminho apontam um para o outro, muitas vezes após um URL ter sido movido de volta.Exclua ou aponte novamente um deles.
Fica em loop apenas para alguns visitantesUma regra de cookie, idioma ou dispositivo no site de destino redireciona de volta.Faça o rastreamento numa janela privada e teste essa regra no site de destino.

Etapa 4: Verifique novamente e limpe os caches#

Os navegadores armazenam em cache redirecionamentos 301, então um loop que você já corrigiu pode continuar aparecendo no seu próprio navegador. Teste numa janela privada ou com curl, e limpe o cache do navegador se necessário.

Rastreie uma URL agora Veja cada salto, seu código de status e os problemas que vale a pena corrigir, para qualquer URL pública.

Abrir o Verificador de Redirecionamento

Ainda preso? Veja Solução de problemas de novos redirecionamentos para problemas de DNS e HTTPS, e Correspondência para saber como uma solicitação encontra seu redirecionamento.

Perguntas frequentes

Uma cadeia é vários redirecionamentos que terminam numa página funcional (A → B → C). Um loop nunca termina porque volta a uma URL que já visitou (A → B → A), então o navegador mostra ERR_TOO_MANY_REDIRECTS.

Cada salto adiciona atraso, e o Google segue apenas um número limitado de saltos por URL. Apontar o primeiro redirecionamento diretamente para a URL final evita ambos os problemas.

Rastreie a URL para ver quais duas URLs se repetem e, em seguida, remova ou redirecione uma das regras que enviam tráfego entre elas. As causas mais comuns são regras conflitantes de http/https ou www e o modo Flexible SSL da Cloudflare.

Não em um redirecionamento de domínio inteiro: ele corresponde a todos os caminhos no domínio, então corresponderia ao seu próprio destino e entraria em loop. Use links de caminho para as URLs que mudam, ou redirecione para um host diferente.

Ajuda relacionada

Ver todos os artigos