Um código de status HTTP que redireciona permanentemente uma requisição, exigindo que o cliente preserve o método e o corpo da requisição na nova URL. Este guia foca na decisão, nas verificações e nos limites que importam em uma revisão real.
O que um redirecionamento 308 controla
O HTTP 308 é um redirecionamento permanente definido para os casos em que o método da requisição importa. A resposta informa uma nova localização e instrui um cliente que segue o padrão a repetir a requisição ali, sem alterar o método nem o corpo. Isso o torna útil para uma mudança permanente de um endpoint de API ou de um manipulador de formulário em que a semântica de POST, PUT, PATCH ou DELETE precisa sobreviver à mudança. Ele não reescreve dados da aplicação, não valida o destino e não corrige um desenho de rota quebrado. Para páginas de documento acessadas com GET, o 301 costuma ser a escolha operacional mais clara, porque a preservação do método não agrega valor para o leitor.
Escolha o status pela intenção da mudança
Decida se a mudança é permanente antes de escolher um número. O 308 diz que o endereço antigo foi substituído, enquanto o 307 comunica uma mudança temporária com preservação do método. O 301 também expressa uma mudança permanente, mas o comportamento histórico de alguns clientes pode transformar uma requisição que não é GET em GET. Os buscadores documentam redirecionamentos permanentes como sinais de consolidação, mas um código de status não garante quando o rastreamento ou a seleção da canônica vai mudar. Mantenha a URL antiga no inventário da migração até que o destino, os links internos, a política de canonical e a resposta de rastreamento tenham sido verificados.
Implemente e teste uma mudança permanente
Comece com um pequeno mapa de URLs: endpoint antigo, endpoint final pretendido, motivo e dono. Configure um 308 direto de cada rota aposentada sensível ao método para a substituta relevante; evite enviar requisições não relacionadas para a página inicial. Teste um método de requisição real em um ambiente que não seja de produção e, em seguida, inspecione o status e o Location sem segui-lo automaticamente. Repita com o seguimento de redirecionamentos habilitado e verifique se o handler final recebe o método esperado. Por fim, rastreie a lista de URLs antigas, atualize as referências internas para a URL final e monitore separadamente as evidências do servidor e do Search Console.
- Defina o conjunto de URLs ou páginas e o comportamento esperado.
- Teste uma amostra representativa e preserve a resposta bruta ou a evidência renderizada.
- Corrija uma causa controlável por vez e, depois, teste de novo o mesmo escopo.
- Registre lacunas, exceções e verificações de acompanhamento, em vez de tratar dados ausentes como aprovação.
Modos de falha e pontos de revisão
O erro comum é tratar o 308 como um atalho de SEO. Ele é uma decisão de transporte, não uma tática de ranqueamento. Outro erro é testar apenas uma navegação no navegador, que exercita GET e não o caminho POST ou PUT que justificou o 308. Cadeias e loops de redirecionamento, um cabeçalho Location ausente, um destino que retorna erro ou uma resposta antiga em cache exigem investigação separada. Em migrações, mapeio cada URL aposentada para um único destino final relevante e, depois, rastreio o mapa para remover cadeias e loops antes de considerar o trabalho concluído. Registre o que foi verificado e o que estava indisponível; uma requisição pontual bem-sucedida não é cobertura de todo o conjunto de rotas.
O cache merece uma verificação própria. Uma resposta permanente pode continuar em caches do navegador ou de intermediários após uma reversão de configuração, por isso teste a partir de um cliente limpo e registre as diretivas de cache da resposta quando elas importarem. Não varie um redirecionamento apenas pelo user agent para tentar atender clientes antigos: isso torna a rota difícil de reproduzir e pode gerar evidências de rastreamento inconsistentes. Se a compatibilidade exigir um fallback, documente quais clientes precisam dele e mantenha a mesma política de URL final para todos os demais solicitantes comuns.