Os códigos HTTP 302 são uma maneira valiosa de redirecionar os usuários do site para uma URL diferente temporariamente. Entretanto, se o seu site estiver entregando redirecionamentos 302  por engano, é sinal de que algo está errado.

Não se preocupe – você pode corrigir este problema – mas você precisará fazer algumas soluções de problemas.

O primeiro passo é entender exatamente o que são códigos HTTP 302, como eles funcionam e porque eles ocorrem. Uma vez que você sabe disso, você pode descobrir o que deu errado e como fazer certo.

Neste artigo, nós lhe diremos tudo o que você precisa saber sobre os erros de HTTP 302. Então nós compartilharemos cinco dicas de solução de problemas para ajudar você a corrigi-los.

Vamos começar!

Confira nosso Guia de Vídeo para o Código de Status HTTP 302

O que são os Códigos de Status HTTP 302?

Os códigos 302 são um tipo específico de código de status HTTP. Estes códigos são como “notas” que um servidor entrega ao seu navegador.

Sempre que você clicar em um link ou navegar para uma URL, seu navegador solicita o webserver para o mesmo. Em troca, o servidor envia de volta o recurso relevante (por exemplo, a página que você está tentando acessar) junto com um cabeçalho HTTP. Os códigos de status HTTP estão dentro desse cabeçalho.

Tipicamente, você não pode ver estes códigos de status em qualquer lugar na página da web. Você normalmente só os verá quando ocorrer um erro, ou se você tiver instalado uma extensão de navegador que os torne visíveis:

Um código de status HTTP de uma página da web, mostrado usando uma extensão do navegador Chrome.
Um código de status HTTP de uma página da web, mostrado usando uma extensão do navegador Chrome

3xx códigos de status (301, 302, etc.) são uma classe de códigos de status chamada “códigos de redirecionamento” Eles são devolvidos sempre que o servidor envia de volta um novo recurso ao invés do recurso solicitado.

Em outras palavras, eles são mostrados quando a página do site que você pretende acessar o redirecionamento para uma página diferente.

A diferença crítica entre o código 301 e o código 302 é que o primeiro é usado para redirecionamentos permanentes, enquanto o segundo é para redirecionamentos temporários.

Os redirecionamentos 301 também passam “link juice”, enquanto os redirecionamentos 302 não passam. Isso tem um impacto significativo no Search Engine Optimization (SEO).

Como funcionam os redirecionamentos 302

Quando você configura um redirecionamento 302 para uma página em seu site que está temporariamente indisponível, e um usuário visita aquela página, seu webserver responderá ao navegador do visitante com um cabeçalho especial de Localização. Este cabeçalho indicará a nova URL para a qual o navegador deve redirecionar o usuário.

Por exemplo, imagine que um usuário digite blog.example.com em sua barra de URL do navegador, mas o site está configurado para redirecioná-lo para blogging.example.com.

A resposta do servidor incluirá tanto o código de status 302 como o cabeçalho Location: blogging.example.com. Esta configuração diz ao navegador do usuário para redirecionar esta solicitação para a nova URL.

É claro, tudo isso acontece automaticamente e nos bastidores. O usuário não deve ser capaz de ver nada disso. Ao invés disso, seu navegador deve levá-los automaticamente para o novo recurso.

Por que os erros de HTTP 302 acontecem

Se algo estiver mal configurado em seu site, pode fazer com que códigos 302 sejam emitidos por engano. Se isso acontecer, você pode encontrar problemas como:

  • Uma página em seu site que redireciona seus visitantes para outro lugar quando não deveria
  • Uma página em seu site que redireciona seus visitantes para o recurso errado
  • O erro ERR_TOO_MANY_REDIRECTS (também conhecido como um “loop de redirecionamento”)

A última destas questões é a única que exibirá uma página de erro real. Se você estiver usando o navegador Chrome, uma página de erro de loop de redirecionamento será algo parecido com isto:

A mensagem de erro ERR_TOO_MANY_REDIRECTS no Chrome
A mensagem de erro ERR_TOO_MANY_REDIRECTS no Chrome

No Mozilla Firefox, é assim que parece:

A mensagem de erro ERR_TOO_MANY_REDIRECTS no Firefox
A mensagem de erro ERR_TOO_MANY_REDIRECTS no Firefox

Todos os problemas acima são causados por alguma má-configuração. Pode ser um conflito de plugins, configurações de URL incorretas ou um arquivo .htaccess mal configurado.

Como corrigir o erro HTTP 302 (5 Métodos)

Em seguida, nós o acompanharemos através de cinco métodos de solução de problemas que podem ajudar você a descobrir o que está causando o problema e corrigi-lo.

Antes de começarmos, certifique-se de fazer um backup completo do seu site primeiro. Dessa forma, se algo der errado, você pode sempre reverter para a versão anterior. Você pode usar um plugin do WordPress para fazer isso.

1. Determine se os redirecionamentos são válidos

Respostas 302 geralmente não são erros. O redirecionamento temporário dos usuários para uma página diferente pode ser uma configuração válida e normalmente não é algo que requer correção.

É apenas um erro se o seu site estiver respondendo com códigos 302 que não deveria emitir, ou se estiver causando um loop de redirecionamento. Portanto, o primeiro passo é verificar novamente quais URLs estão gerando os códigos HTTP 302 e determinar se o redirecionamento é apropriado ou não.

Para fazer isso, você pode navegar para as páginas do seu site que você suspeita ter emitido o erro 302 e ver por si mesmo se eles se comportam como esperado. Se uma página temporariamente indisponível for redirecionada para o recurso correto, ela está devidamente configurada.

Entretanto, se uma página redireciona você para o recurso errado ou seu navegador relata um loop de redirecionamento trazendo uma página de erro ERR_TOO_MANY_REDIRECTS, é um sinal de que um (ou mais) de seus redirecionamentos não está configurado corretamente.

2. Verifique seus plugins

Uma das causas mais comuns de erros 302 e loops de redirecionamento são os plugins.

Alguns plugins de gerenciamento de redirecionamento do WordPress e ferramentas de SEO como Yoast SEO gerenciam o redirecionamento do seu site e permitem que você estabeleça regras de redirecionamento:

A página de configurações de redirecionamento do plugin Yoast SEO Premium.
A página de configurações de redirecionamento do plugin Yoast SEO Premium

Se essas regras forem mal configuradas, ou se dois plugins entrarem em conflito, isso pode causar problemas inesperados. Portanto, você precisará verificar cada ferramenta relevante que está instalada em seu site.

Por exemplo, se você estiver usando o popular plugin 301 Redirects do WordPress, você pode verificar a configuração navegando para Settings 301 Redirects. Em Redirect Rules, você verá uma lista de todas as regras de redirecionamento que você configurou:

A página de configuração das Regras de Redirecionamento do plugin 301 Redirects.
A página de configuração das Regras de Redirecionamento do plugin 301 Redirects

Verifique todos os 302 redirecionamentos listados aqui, e certifique-se de que estejam todos corretos.

Você também vai querer garantir que você não montou nada de uma maneira que possa causar um loop de redirecionamento. Por exemplo, se o Página A estiver configurado para redirecionar para o Página B, mas o Página B também estiver configurado para redirecionar para o Página A, isto causará um erro.

Se você tiver vários plugins de redirecionamento e não tiver certeza qual deles está causando o problema, você pode tentar desativá-los um a um a partir da página de plugins do WordPress (certifique-se de fazer um backup primeiro):

A página Plugins no painel de controle do WordPress.
A página Plugins no painel de controle do WordPress

Após desativar cada plugin, tente revisar a URL do problema para ver se o erro 302 persiste.

Se o problema for subitamente resolvido, você saberá qual plugin estava causando o problema, e você pode então escolher entre resolver mais problemas ou removê-lo do seu site.

3. Certifique-se de que suas configurações de URL do WordPress estejam configuradas corretamente

Outra causa comum do erro HTTP 302 é uma má configuração nas configurações da URL do WordPress.

Para verificar isso, navegue para Settings General em seu painel do WordPress. Aqui, você deve ver um campo WordPress Address (URL) e um campo Site Address (URL):

A página Configurações Gerais do WordPress.
A página Configurações Gerais do WordPress.

Na maioria dos casos, as URLs em ambos os campos devem coincidir. Certifique-se de que ambos sejam iguais, incluindo a parte “www” (ou falta dela) antes do nome do domínio.

Se eles não corresponderem, atualize as configurações, então verifique a URL da página que emitiu o erro HTTP 302 para ver se ele está corrigido.

4. Verifique a configuração do seu servidor

Um servidor mal configurado também pode, às vezes, causar erros 302 de redirecionamento. Portanto, o próximo passo é verificar a configuração do seu servidor.

Se o seu host usa o webserver Apache, você pode fazer isso verificando seu arquivo.htaccess.

Primeiro, conecte-se aoservidor do seu site através de um painel de controle como o cPanel ou um cliente FTP. Depois navegue até o diretório raiz do seu site – o mesmo lugar das pastas wp-admin e wp-content – e encontre o arquivo .htaccess:

O arquivo .htaccess na raiz do site.
O arquivo .htaccess na raiz do site.

Se você não estiver encontrando o arquivo .htaccess aqui (e você tem certeza em um servidor Apache), você pode precisar dizer ao FileZilla para mostrar arquivos ocultos antes que ele apareça na lista de arquivos.

A seguir, abra o arquivo em seu editor de texto favorito. Deve ser algo parecido com isto:

RewriteXXX diretivas em um arquivo .htaccess
RewriteXXX diretivas em um arquivo .htaccess

Agora, vamos procurar as diretivas RewriteXXX (os elementos destacados acima). Sem ficar muito técnico, as diretivas RewriteCond e RewriteRule são usadas para realizar redirecionamentos de uma URL para outra.

A diretiva RewriteCond especifica o URL para o qual você quer redirecionar o visitante, enquanto a diretiva RewriteRule especifica o URL para o qual você quer redirecioná-los. Aqui está um exemplo:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^website.com$
RewriteRule ^(.*)$ http://www.temporary-website.com/$1 [R=302]

A bandeira no final, “[R=302]”, diz ao navegador que este é um redirecionamento temporário 302.

Se você notar qualquer combinação RewriteXXX similar às acima no seu arquivo .htaccess que não deveria estar lá, você pode comentá-las, salvar as mudanças e recarregar a página web do problema para ver se ele resolve o problema.

Apenas certifique-se de baixar e salvar uma cópia extra do seu arquivo .htaccess antes de fazer qualquer mudança no caso de algo dar errado.

5. Contate o seu provedor de hospedagem

Se você já tentou todos os métodos acima e ainda está tendo problemas, o próximo passo é contactar o seu provedo de hospedagem (web host).

A solução de um erro de código 302 além deste ponto requer muito conhecimento técnico. Portanto, a menos que você seja um desenvolvedor profissional, provavelmente é melhor obter ajuda de um especialista.

Em Kinsta, nós levamos o suporte a sério. Nossa equipe de especialistas está sempre à disposição para ajudá-lo a resolver problemas como este sempre que eles surgirem:

A página de Suporte da Kinsta.
A página de Suporte da Kinsta.

Nós estamos disponíveis 24 horas por dia, 7 dias por semana. Tudo que você tem que fazer é entrar em sua conta MyKinsta e entrar em contato conosco via chat ao vivo para se conectar com um engenheiro de suporte que pode ajudar em tempo real.

Resumo

Os códigos de status HTTP 302 são uma maneira completamente normal de redirecionar os visitantes do seu site. Entretanto, eles só devem ser usados quando a página de recursos estiver temporariamente indisponível.

Suponha que seu site esteja emitindo códigos 302 por engano ou causando loops de redirecionamento. Nesse caso, é vital corrigir esse problema o mais rápido possível, ou ele pode ter um impacto negativo em seu SEO e conversões.

Você pode seguir estes cinco passos para corrigir os erros do HTTP 302 em seu site:

  1. Determine se os redirecionamentos são apropriados ou não examinando as URLs que estão emitindo os redirecionamentos 302.
  2. Verifique seus plugins para ter certeza de que quaisquer configurações de redirecionamento são válidas.
  3. Certifique-se de que suas configurações de URLs do WordPress estejam configuradas corretamente.
  4. Verifique a configuração do seu servidor procurando por diretivas incorretas RewriteXXX em seu arquivo .htaccess (somente servidores Apache).
  5. Contate o seu provedor de hospedagem para obter mais suporte técnico se o problema persistir.

Você ainda tem alguma pergunta sobre o erro HTTP 302? Nos informe na seção de comentários.

Jeremy Holcombe Kinsta

Editor de Conteúdo & Marketing na Kinsta, Desenvolvedor Web WordPress e Escritor de Conteúdo. Fora do universo WordPress, eu curto praia, golfe e filmes. Também enfrento problemas de gente alta ;).