Muitos redirecionamentos: o que esse erro significa e como corrigi-lo
Publicados: 2022-09-27“Muitos redirecionamentos”, também conhecido como loop de redirecionamento, é um erro que o navegador retornará se a página da Web solicitada não carregar devido a um número infinito de redirecionamentos que ele precisa seguir para recuperar qualquer conteúdo do servidor. Os loops de redirecionamento geralmente podem ser causados por redirecionamentos conflitantes no lado do servidor ou uma configuração incorreta da CDN.
Neste guia abrangente para corrigir o erro "Muitos redirecionamentos", você aprenderá onde os redirecionamentos podem ser configurados, quais são os motivos mais comuns por trás dos loops de redirecionamento e como resolvê-los passo a passo.
O que são redirecionamentos e como eles funcionam?
Os redirecionamentos de sites podem ser definidos como as etapas que precisam ser executadas durante a entrega do conteúdo para encontrar a localização da página da Web solicitada. Embora, para você, possa parecer que a mudança alcançada com uma regra de redirecionamento reflete apenas como o endereço do site é exibido na barra de endereços, seu navegador executa uma série de operações nos bastidores para determinar onde cada redirecionamento leva antes que ele possa carregar qualquer conteúdo do local final definido pelo caminho de redirecionamento.
Forçar HTTPS, a versão www de um site ou carregar outro nome de domínio — os redirecionamentos são amplamente usados na hospedagem de sites, permitindo que você personalize a entrega de conteúdo. Existem várias maneiras de configurar redirecionamentos de domínio e, desde que estejam configurados corretamente, os navegadores não terão problemas ao seguir as regras que você criou.
Redirecionamentos Temporários e Permanentes
Existem dois tipos principais de redirecionamentos que podem ser configurados — temporários e permanentes. Dependendo do tipo de redirecionamento encontrado, o servidor web retornará o código de status HTTP 302 ou 301.
Um código de resposta HTTP 302 mostra que um endereço da Web específico é redirecionado temporariamente para outro local. No entanto, às vezes você pode ver que um redirecionamento temporário é seguido quando você remove uma regra de redirecionamento permanente do seu site, mas não libera seu cache, o que impede que as alterações fiquem visíveis.
Isso pode acontecer se você estiver usando uma solução de cache de qualquer tipo, incluindo um dos plugins de cache do WordPress. Seu navegador também armazenará uma versão em cache de qualquer site que você visitar, que incluirá redirecionamentos antigos.
Os redirecionamentos permanentes retornam o código de status HTTP 301 e indicam que seu site ou determinada página nele foi movida permanentemente, o que, no caso de ser um redirecionamento para HTTPS ou a versão www do site, não significa necessariamente que sua localização em o sistema de arquivos foi alterado.
Quais são os redirecionamentos mais comuns?
Redirecionamentos do protocolo web HTTP para HTTPS e da versão não www para www do site são as duas regras mais comuns configuradas. Os redirecionamentos para HTTPS garantem que todo o tráfego da Web seja criptografado usando um certificado SSL, enquanto os redirecionamentos para www são frequentemente usados para integrar uma rede de entrega de conteúdo ao seu site usando um registro CNAME.
HTTP para HTTPS
Um redirecionamento de HTTP para HTTPS, geralmente chamado de HTTPS forçado, pode ser configurado para garantir que nenhum conteúdo seja entregue a um visitante do site por meio de uma conexão HTTP insegura. Se um certificado SSL/TLS válido estiver instalado em seu site, você normalmente não precisa forçar o HTTPS manualmente, mas adicionar esse redirecionamento pode ser uma das maneiras de lidar com conteúdo misto.
Conteúdo misto
O conteúdo misto no site pode ser definido como uma situação em que o arquivo HTML base é carregado via HTTPS, mas os outros recursos referenciados, incluindo imagens, arquivos Javascript ou CSS, são entregues ao visitante via HTTP. Mesmo se você tiver um certificado SSL válido instalado, os navegadores ainda mostrarão um aviso de segurança se o conteúdo misto for identificado em uma página da web.
Configurar um redirecionamento para resolver o problema com conteúdo misto geralmente não é a melhor solução. Em vez disso, você deve atualizar todos os URLs (Uniform Resource Locators) no banco de dados do seu site para incluir o protocolo HTTPS em vez de HTTP. Isso pode ser feito manualmente usando o recurso de substituição de pesquisa que o WP CLI oferece ou um plugin do WordPress. Para outros sistemas de gerenciamento de conteúdo, você precisará modificar os endereços usando uma ferramenta de administração de banco de dados como phpMyAdmin ou executando consultas MySQL/MariaDB a partir da linha de comando.
3 principais locais onde os redirecionamentos podem ser configurados
Os redirecionamentos geralmente podem ser configurados em um dos três locais principais:
- Configuração do servidor web . Os arquivos de configuração global usados por um servidor da Web contêm configurações que geralmente são aplicadas a todos os sites hospedados, portanto, adicionar redirecionamentos a um deles não é recomendado. O uso de arquivos de configuração local criados para cada site individualmente é o padrão para configurar redirecionamentos no lado do servidor.
- Configuração do sistema de gerenciamento de conteúdo . Seu sistema de gerenciamento de conteúdo armazena o endereço do seu site no banco de dados como uma constante, que pode ser usada para forçar o HTTPS ou carregar a versão www dele.
- Configuração de rede de entrega de conteúdo . Seu CDN forçará seus próprios redirecionamentos que definirão exatamente como o conteúdo é recuperado do servidor de origem e entregue aos visitantes do site.
Redirecionamentos em arquivos de configuração do servidor Web
Você pode configurar regras de redirecionamento localmente em um dos arquivos de configuração que seu servidor web irá ler. Quando o Apache é usado como servidor web, as regras de redirecionamento geralmente são configuradas no arquivo .htaccess local do site. Se o NGINX for usado, os redirecionamentos serão configurados no bloco do servidor NGINX, que representa a configuração global do seu site.
Abaixo você pode ver dois redirecionamentos que podem ser adicionados ao .htaccess — um forçando HTTPS e o outro enviando todas as solicitações da web para a versão www do site. Regras de sintaxe estritas precisam ser seguidas, ou você corre o risco de deixar seu site fora do ar se o Apache detectar algum erro de sintaxe em um dos arquivos de configuração local.
Se você usar algum plugin de redirecionamento para WordPress, é mais provável que eles gravem seus redirecionamentos em seu arquivo .htaccess local também.
Redirecionamentos na configuração do WordPress
O WordPress e outros sistemas de gerenciamento de conteúdo colocam o endereço do site no banco de dados e a configuração é carregada toda vez que qualquer conteúdo é solicitado. O endereço representa um URL que consiste em um nome de domínio e um protocolo da web, HTTP ou HTTPS. Ao alterar os URLs no banco de dados, você pode redirecionar seu site para www ou forçar HTTPS se houver um certificado SSL/TLS instalado.
O WordPress usa a constante WP_HOME para identificar a configuração de endereço do WordPress e WP_SITEURL como endereço do site, que são armazenados na tabela wp_options como siteurl e home. A configuração de endereço do WordPress refere-se ao local da instalação do WordPress, enquanto o endereço do site representa a URL que você precisa digitar na barra de endereço do navegador para abrir seu site.
Redirecionamentos forçados pela CDN
Sua configuração de rede de entrega de conteúdo define como ela pode recuperar as páginas da Web solicitadas do servidor de origem e entregá-las aos visitantes do seu site — por HTTP ou HTTPS. Os procedimentos exatos são determinados pelo modo de criptografia escolhido. Existem três tipos principais de criptografia oferecidos pelas redes modernas de entrega de conteúdo:
- Criptografia completa ou de ponta a ponta . A criptografia de ponta a ponta garante que o HTTPS seja usado em todos os estágios da entrega de conteúdo. Isso significa que todas as solicitações da Web do navegador para o CDN e do CDN para o servidor de origem são sempre enviadas por HTTPS. A criptografia de ponta a ponta requer dois certificados SSL — um instalado no servidor de origem e outro implementado pela CDN.
- Criptografia flexível ou parcial . A criptografia parcial força todas as conexões do navegador ao CDN a passar por HTTPS, enquanto o CDN se conectará ao servidor de origem por HTTP. Seu site, no entanto, ainda será exibido como seguro em todos os navegadores.
- Sem criptografia . Com a criptografia desativada, a entrega de conteúdo ocorrerá por HTTP e todos os navegadores mostrarão um aviso de segurança ao carregar seu site.
Se o CDN estiver tentando iniciar uma conexão via HTTPS, mas seu servidor web redirecionar solicitações HTTPS para HTTP, um loop de redirecionamento será criado, o que resultará na visualização do erro de muitos redirecionamentos em seu site.
O que significa o erro "Muitos redirecionamentos"?
"Muitos redirecionamentos", muitas vezes referido como um loop de redirecionamento, é uma mensagem de erro que indica um conflito que ocorre durante a entrega de conteúdo causado por dois redirecionamentos concorrentes. Quando um loop de redirecionamento é identificado, os navegadores modernos retornarão uma das seguintes variações do erro:
- A página não está redirecionando corretamente . Você pode ver esta mensagem de erro no Firefox.
- A página não está funcionando. ERR_TOO_MANY_REDIRECTS . O Google Chrome mostrará esse erro uma vez preso em um loop de redirecionamento.
- O Safari não pode abrir a página porque ocorreram muitos redirecionamentos . Dessa forma, o Safari informará quais conflitos de redirecionamento precisam ser resolvidos antes que o site possa ser carregado.
Para corrigir o erro de muitos redirecionamentos, você precisará revisar os redirecionamentos configurados em .htaccess e forçados pelo sistema de gerenciamento de conteúdo e verificar qual modo de criptografia é usado pela rede de entrega de conteúdo, se você tiver um usado.
3 erros de configuração mais comuns que causam um loop de redirecionamento em seu site e como resolvê-los
Passar por todos os redirecionamentos para identificar um conflito não é uma tarefa fácil, principalmente se alguns forem adicionados à configuração global do servidor web, o que os torna aplicados em todo o servidor. No entanto, existem algumas configurações incorretas vistas com muita frequência que inevitavelmente levam a loops de redirecionamento.
Os três motivos mais comuns para ver “Muitos redirecionamentos” em seu site são:
- Está faltando um certificado SSL/TLS válido . Um loop de redirecionamento pode ocorrer se o seu certificado SSL tiver expirado ou se houver outros problemas com ele, mas seu site ainda tentar forçar o HTTPS.
- As configurações de endereço do site do CMS estão incorretas . Se o protocolo especificado nas configurações de endereço do site usado pelo WordPress ou outro sistema de gerenciamento de conteúdo entrar em conflito com outros redirecionamentos configurados, isso causará o erro de muitos redirecionamentos.
- O modo de criptografia CDN incorreto foi escolhido . É especialmente comum ver loops de redirecionamento ao alternar para criptografia completa na configuração da CDN. Se os requisitos para usar a criptografia de ponta a ponta não forem atendidos pelo servidor de origem, isso poderá resultar em problemas.
Um certificado SSL/TLS válido está ausente
Um certificado SSL/TLS assinado por CA válido instalado no site garante que todo o tráfego da Web seja criptografado quando entregue do servidor ao navegador. Além disso, o HTTPS provavelmente é forçado no nível do servidor, o que funciona perfeitamente até que seu certificado SSL expire e não seja renovado automaticamente. Pode acontecer pelos seguintes motivos:
- As renovações automáticas de certificados SSL/TLS não estão habilitadas . Se o SSL não foi renovado automaticamente, você terá que solicitar um novo certificado e instalá-lo.
- Falha na validação do domínio SSL . Vamos criptografar ou Sectigo, um dos provedores SSL mais usados que oferece certificados gratuitos, implementa diferentes desafios para validar que você controla os nomes de domínio para os quais um novo certificado precisa ser emitido. Se a validação do domínio falhar, um novo certificado não será instalado até que você resolva o problema que bloqueia a solicitação de validação.
- A raiz ou um dos certificados intermediários expirou . Quando isso acontecer, você precisará reinstalar seu certificado assim que o provedor SSL resolver o problema.
Como endereçar
Verifique se o seu site tem um certificado válido instalado usando um verificador de SSL. Se expirou ou o verificador de SSL mostra outros problemas, reinstale o certificado. Se Let's Encrypt ou Sectigo não emitirem um certificado gratuito, você precisará verificar o que pode estar bloqueando a solicitação de validação.
Uma das razões pelas quais a validação de domínio SSL falha é ter uma rede de entrega de conteúdo integrada, especialmente se a última vez que Let's Encrypt ou Sectigo emitiu um certificado, você ainda não o configurou. Se você precisar instalar um novo certificado SSL gratuito, pause o CDN, para que seu site aponte diretamente para o servidor, retornando seu endereço IP principal em vez do endereço IP que pertence à rede de entrega de conteúdo. Dessa forma, você pode renovar o certificado no servidor de origem para continuar usando a criptografia de ponta a ponta.
As configurações de endereço do site CMS estão incorretas
O WordPress e todos os outros sistemas de gerenciamento de conteúdo podem forçar redirecionamentos para HTTPS ou www armazenando o endereço do seu site no banco de dados e carregando-o sempre que qualquer conteúdo for solicitado. Se as configurações de endereço do site estiverem configuradas incorretamente - usando o protocolo ou nome de domínio errado - isso causará problemas, incluindo a visualização de muitos erros de redirecionamento.
Como endereçar
Se você tiver um certificado SSL instalado, especialmente se a criptografia de ponta a ponta for garantida pela configuração da CDN, use HTTPS nas configurações de Endereço do WordPress e Endereço do site. Se você tiver seu site redirecionado para a versão www, os concorrentes WP_SITEURL e WP_HOME precisam refletir isso.
Abra o menu Configurações gerais do seu painel do WordPress e corrija os valores atribuídos ao endereço do WordPress e ao endereço do site necessários. Clique em Salvar alterações para que o WordPress modifique as configurações no banco de dados.
O modo de criptografia CDN errado é escolhido
Não pode haver nenhum conflito entre os redirecionamentos configurados no servidor de origem e o modo de criptografia usado pela CDN, ou você verá o erro “Muitos redirecionamentos” ao tentar carregar seu site em qualquer navegador. Certifique-se de escolher o modo de criptografia correto que melhor se adapte às necessidades do seu site.
Como uma rede de entrega de conteúdo sempre criptografa o tráfego entre seus servidores e o navegador, a menos que você desative totalmente a criptografia, você pode optar por não ter o SSL instalado no servidor de origem. Escolha a criptografia parcial e certifique-se de não forçar o HTTPS no nível do servidor para evitar problemas ao aceitar solicitações da CDN sobre HTTP.
Se a criptografia de ponta a ponta for escolhida, um certificado SSL válido deve ser instalado no servidor de origem, para que o CDN possa se conectar por HTTPS. A menos que você possa instalar um novo certificado manualmente, toda vez que o SSL precisar ser renovado, pause temporariamente sua CDN para evitar problemas com a validação do domínio.
Como endereçar
Revise sua configuração atual e decida qual modo de criptografia precisa ser escolhido. Alterne para outro tipo de criptografia para corrigir o erro "Muitos redirecionamentos" em seu site que foi causado por um redirecionamento conflitante no servidor de origem ou pela ausência de SSL necessário para oferecer suporte à criptografia de ponta a ponta.
Como corrigir os "muitos redirecionamentos" em 3 etapas
Nas etapas abaixo, você aprenderá como identificar os redirecionamentos conflitantes e corrigir rapidamente o loop de redirecionamento em seu site.
Etapa 1. Verifique o caminho de redirecionamento do seu site
Muitas fontes aconselham limpar o cache do navegador como o primeiro passo para solucionar problemas de loops de redirecionamento. No entanto, como acontece com qualquer outro erro, ele só funcionará se o problema tiver sido resolvido no servidor, mas o navegador ainda armazenar uma versão quebrada do seu site em seu cache. Normalmente, depois de fazer qualquer alteração em seu site, você pode querer limpar seu cache para vê-las refletidas.
O primeiro passo para corrigir “Muitos redirecionamentos” é seguir o caminho de redirecionamento do seu site para ver onde exatamente o navegador está travando. A melhor maneira de fazer isso é usando um dos verificadores de redirecionamento.
Todos ou a maioria dos verificadores de redirecionamento usam cURL, uma ótima ferramenta de linha de comando para transferir dados usando vários protocolos de rede. Podemos usá-lo para obter as informações do cabeçalho HTTP, que mostrarão exatamente o que acontece quando você tenta carregar seu site.
Salve o seguinte script Bash simples em um arquivo chamado redirects.sh quando estiver conectado ao servidor por SSH. Torne-o executável executando chmod +x redirects.sh.
Execute o script passando-o para o nome de domínio do seu site. Por exemplo, ./redirects.sh wordpress.com.
Etapa 2. Identifique os redirecionamentos conflitantes
Examine a saída que você obteve executando o script acima. Ele lhe dirá que tipo de redirecionamento faz com que “Muitos redirecionamentos” apareçam, pois o navegador desiste de seguir as regras conflitantes. Na saída abaixo, podemos ver que há um redirecionamento infinito de HTTP e HTTPS.
Observe os códigos de status de retorno de cada redirecionamento. Os redirecionamentos permanentes geralmente vêm do arquivo .htaccess do site, enquanto os redirecionamentos temporários geralmente são gerados dentro do código de um site, portanto, são controlados pelo WordPress ou outro sistema de gerenciamento de conteúdo que você usa.
Etapa 3. Endereçar o Loop de Redirecionamento
Dependendo das regras de redirecionamento conflitantes que você identificou, você saberá onde fazer um loop para elas. Conforme discutimos, há três coisas principais a serem verificadas — seu arquivo .htaccess local, as configurações de endereço do site armazenadas no banco de dados do site pelo CMS e o modo de criptografia escolhido na configuração da CDN.
Se o loop de redirecionamento ocorrer enquanto seu site estiver tentando redirecionar entre HTTP e HTTPS, verifique se você tem um certificado SSL/TLS válido instalado e qual modo de criptografia é escolhido na configuração de sua CDN se houver alguma integração com seu site. Verifique o endereço do site e o endereço do WordPress especificados para o seu site e armazenados no banco de dados do WordPress.
Siga as instruções fornecidas na seção anterior do guia para solucionar erros de configuração comuns e corrigir “Muitos redirecionamentos” em seu site.
Conclusão
A mensagem de erro “Muitos redirecionamentos”, também conhecida como loop de redirecionamento, aparece em seu site quando o navegador não carregou nenhum conteúdo devido a um grande número de redirecionamentos que se seguiram. Para corrigir o loop de redirecionamento, você precisa resolver o conflito que existe no caminho de redirecionamento.
Administrar um negócio online é cheio de desafios, e nem sempre é possível gastar horas configurando a infraestrutura do servidor e corrigindo erros. Também não é uma boa ideia quando ter as soluções certas pode eliminar a necessidade de contratar uma equipe dedicada para manter seu site funcionando sem problemas.
Protegendo cerca de um milhão de sites WordPress, o BackupBuddy e o iThemes Security Pro são soluções líderes do setor para segurança em nível de aplicativo e recuperação de dados. Verificações regulares de vulnerabilidades e varreduras de malware fornecidas pelo recurso Site Scan permitem que você reduza significativamente a superfície de ataque e proteja seu site de todas as vulnerabilidades conhecidas. Backups automáticos e restaurações fáceis com um clique — o BackupBuddy possibilita a recuperação de todos os ataques maliciosos e erros comuns.
O melhor plug-in de segurança do WordPress para proteger e proteger o WordPress
Atualmente, o WordPress alimenta mais de 40% de todos os sites, por isso se tornou um alvo fácil para hackers com intenções maliciosas. O plug-in iThemes Security Pro elimina as suposições da segurança do WordPress para facilitar a segurança e a proteção do seu site WordPress. É como ter um especialista em segurança em tempo integral na equipe que monitora e protege constantemente seu site WordPress para você.
Kiki é bacharel em gerenciamento de sistemas de informação e tem mais de dois anos de experiência em Linux e WordPress. Ela atualmente trabalha como especialista em segurança para Liquid Web e Nexcess. Antes disso, Kiki fazia parte da equipe de suporte do Liquid Web Managed Hosting, onde ajudou centenas de proprietários de sites WordPress e aprendeu quais problemas técnicos eles costumam encontrar. Sua paixão pela escrita permite que ela compartilhe seu conhecimento e experiência para ajudar as pessoas. Além da tecnologia, Kiki gosta de aprender sobre o espaço e ouvir podcasts sobre crimes reais.