Existem mais tipos de redirecionamento de URL do que o debate 301 contra 302 sugere, e escolher o errado pode custar silenciosamente velocidade ou ranqueamento. Eles se dividem em duas famílias. Os redirecionamentos HTTP do lado do servidor são códigos de status que o servidor retorna antes do carregamento da página - 301, 302, 303, 307, 308. Os redirecionamentos do lado do cliente acontecem no navegador após o carregamento da página - uma tag de meta refresh ou um salto por JavaScript. O lado do servidor é mais rápido e limpo para usuários e rastreadores; o lado do cliente é mais lento e menos eficaz, e você só o usa quando o servidor está fora do seu controle.
Eu trabalho no caminho de redirecionamento, então manterei isso concreto: o que cada tipo faz na rede, como os mecanismos de busca o leem, e qual usar de fato. Se você quiser um mergulho profundo nos dois que mais usará, redirecionamentos 301 vs 302 cobre esse par em detalhes; este post é o mapa completo.
A versão resumida: para uma mudança permanente use 301, para uma temporária use 302, adicione 308/307 preservando o método quando um POST precisar sobreviver, e evite as opções do lado do cliente a menos que você não tenha um servidor para configurar.
As Duas Famílias de Redirecionamentos#
Um redirecionamento é apenas uma instrução para ir a outro lugar, mas onde essa instrução vive muda tudo sobre como ela se comporta.
Um redirecionamento do lado do servidor é o servidor respondendo "não está aqui, vá lá" antes de qualquer conteúdo de página ser enviado. O navegador recebe um código de status e um cabeçalho Location e se move imediatamente - nenhum conteúdo é carregado na URL original, então é rápido e inequívoco. Um redirecionamento do lado do cliente é o oposto: a página original carrega completamente, e só então uma metatag ou um script envia o visitante adiante. Isso significa um carregamento de página desperdiçado, uma oscilação visível e um sinal mais fraco para os mecanismos de busca, que precisam carregar e às vezes executar a página para sequer notar o redirecionamento. As definições formais dos códigos do lado do servidor estão no RFC 9110, e o comportamento prático do navegador está documentado no guia MDN de redirecionamentos HTTP.
Essa única distinção - antes da página ou depois dela - é por que o restante deste post continua voltando a "use um redirecionamento do lado do servidor quando puder."
Os Redirecionamentos por Código de Status HTTP#
Esses são os redirecionamentos reais, retornados pelo servidor no intervalo 3xx. Cinco são importantes.
| Código | Significado | Permanente? | Método preservado? | Uso típico |
|---|---|---|---|---|
| 301 | Movido Permanentemente | Sim | Não garantido | Mudança definitiva, migração de site, troca para HTTPS |
| 302 | Encontrado | Não | Não garantido | Mudança temporária, links editáveis, testes A/B |
| 303 | Ver Outro | Não | Força um GET | Redirecionamento pós-formulário para uma página de resultado |
| 307 | Redirecionamento Temporário | Não | Sim | Mudança temporária em um endpoint POST ou de API |
| 308 | Redirecionamento Permanente | Sim | Sim | Mudança permanente onde o método deve sobreviver |
Os dois eixos que organizam a tabela são a permanência e o tratamento do método. A permanência é o eixo de SEO: 301 e 308 são permanentes, então os mecanismos de busca transferem sinais de ranqueamento e tratam o destino como canônico, enquanto 302, 303 e 307 são temporários e mantêm a URL original indexada. O tratamento do método é o eixo de engenharia: 307 e 308 preservam estritamente o método HTTP, então um POST permanece como POST, enquanto 301 e 302 historicamente permitiam que ele mudasse para um GET. O 303 é o caso peculiar, criado especificamente para forçar um GET após o envio de um formulário, para que uma atualização não reenvie os dados. A própria documentação de redirecionamentos do Google confirma que ele trata os códigos permanentes como sinais de canonicalização.
Para links comuns na web, que são requisições GET, o eixo de método desaparece e você está realmente escolhendo entre permanente e temporário - que é exatamente a decisão entre 301 e 302.
Redirecionamentos do Lado do Cliente: Meta Refresh e JavaScript#
Quando você não pode configurar o servidor, duas opções no nível do navegador permanecem, e ambas são compromissos.
Um meta refresh é uma tag HTML no cabeçalho da página que instrui o navegador a carregar uma nova URL após um atraso - o padrão "você será redirecionado em 5 segundos". Funciona, mas a página já foi carregada antes que seja acionado, então é lento, e os mecanismos de busca o leem de forma inconsistente: um meta refresh instantâneo geralmente é tratado como um redirecionamento permanente, enquanto um com atraso é ambíguo e pode ser lido como um soft 404. Um redirecionamento JavaScript é ainda mais fraco, pois só acontece se o rastreador executar o script. O Google renderiza JavaScript, mas com atraso, e muitos outros rastreadores não o executam, então o redirecionamento pode ser totalmente ignorado.
O ranqueamento honesto das opções é simples: um 3xx do lado do servidor em primeiro lugar, um meta refresh somente se você controla o HTML mas não o servidor, e um redirecionamento JavaScript como último recurso quando você não controla mais nada. Nada disso se aplica a um link curto gerenciado, que sempre usa um redirecionamento do lado do servidor - as técnicas do lado do cliente são para situações como um host estático sem configuração de redirecionamento.
Qual Redirecionamento Você Deve Usar#
Reduza a uma decisão que você possa tomar de uma vez.
- Mudança permanente, link comum:
301. Transferência total de ranqueamento, tratado como canônico. - Mudança temporária, link comum:
302. Mantém o original indexado e o link editável. - A mudança envolve um POST ou chamada de API: use
308para permanente ou307para temporário, para que o método sobreviva. - Após o envio de um formulário:
303, para que uma atualização da página não reenvie o formulário.
A meta-regra por trás dos quatro: combine o código de status com a verdade sobre a mudança - ela é permanente, e o método importa? Errar esse par é como os redirecionamentos silenciosamente perdem ranqueamento ou quebram um formulário.
O Que os Links Curtos Usam#
Um link curto gerenciado é um redirecionamento do lado do servidor, e por uma boa razão - é a família rápida e amigável para rastreadores. A escolha interessante é qual código, e a resposta para a maioria dos links curtos é 302.
Isso parece errado para o SEO até você lembrar para que serve um link curto. Um 302 mantém o link editável, para que você possa reaponta-lo depois de impresso ou compartilhado, e mantém cada clique chegando ao servidor, para que suas análises permaneçam precisas - ambas as coisas que um 301 armazenado em cache custaria. O raciocínio completo, incluindo a armadilha do cache do navegador, está em redirecionamentos 301 vs 302, e a mecânica de como o redirecionamento é resolvido na borda está em como encurtadores de URL funcionam. Uma regra que se aplica independentemente do código: mantenha-o em um único salto. Um redirecionamento que aponta para outro redirecionamento desperdiça orçamento de rastreamento e latência, e é a forma mais rápida de desfazer o SEO que os links curtos de outra forma preservam.
O mapa completo cabe em uma frase: códigos do lado do servidor para redirecionamentos reais, permanente versus temporário para SEO, variantes que preservam o método para requisições não-GET, e truques do lado do cliente apenas quando o servidor está fora do alcance. Escolha pela verdade da mudança, mantenha a cadeia em um único salto, e seus redirecionamentos farão o que você pretendia.
Relacionados no Blog#
- Redirecionamentos 301 vs 302: qual os links curtos devem usar
- Os encurtadores de URL prejudicam o SEO? A resposta honesta
- Como os encurtadores de URL funcionam por dentro
- Atingindo p95 abaixo de 15ms para redirecionamentos de FRA, ASH e SGP
- Estratégia de cache para redirecionamentos de URL: L1 LRU + L2 Redis
Experimente Elido
Cole uma URL, obtenha um link curto
Sem cadastro. O link vive 30 dias. Cadastre-se para mantê-lo para sempre.
Grátis, sem necessidade de registo · 2 por dia