301 Moved Permanently

O recurso tem uma nova URL permanente.

Quando usar

URLs antigas após uma reestruturação do site. Navegadores e mecanismos de busca memorizam o redirecionamento.

Bom saber

Para SEO, o 301 diz aos mecanismos de busca que a mudança é permanente, então o Google transfere os sinais de ranqueamento e substitui a URL antiga pela nova no índice. O Google trata 301 e 308 da mesma forma e também repassa sinais por 302 de longa duração, mas um 302 pode manter a URL antiga indexada por mais tempo. Mantenha os 301 por pelo menos um ano e aponte-os direto para a URL final, sem passar por uma cadeia.

Os navegadores armazenam o 301 em cache de forma agressiva, muitas vezes sem expiração, então um redirecionamento errado pode ficar preso nos navegadores dos usuários muito depois de você corrigir o servidor. Teste primeiro com 302, ou envie Cache-Control: max-age=3600 no redirecionamento. Os clientes podem transformar um POST em GET ao seguir um 301; use 308 para manter o método. Atualize links internos e sitemaps para as novas URLs em vez de depender de redirecionamentos.

Redirecionamento (3xx)

Os códigos 3xx são redirecionamentos: o cliente precisa ir para outro lugar, ou usar a cópia em cache, para concluir a requisição.

Como fica

HTTP/1.1 301 Moved Permanently

Como enviar

Node.js / Expressres.redirect(301, '/new-url')
Python / Flaskreturn redirect('/new-url', code=301)
nginxreturn 301 https://example.com$request_uri;

Como verificar

curl -s -o /dev/null -w "%{http_code}\n" https://example.com/

Abrir Códigos de status HTTP