301 Movido Permanentemente é um código de status de resposta HTTP usado para redirecionamento permanente de URL, o que significa que links ou registros que atualmente utilizem a URL da qual a resposta foi recebida devem ser atualizados para a nova. A nova URL deve ser fornecida no campo Location incluído na resposta.
O redirecionamento 301 é considerado uma boa prática de atualização dos usuários, no caso de mudar de HTTP para HTTPS.[1] RFC 2616 estabelece que:
- Se um cliente tem suporte à edição de links, ele deve atualizar todas as referências à URL requisitada.
- A resposta pode ser armazenada em cache.[2]
- A não ser que o método da requisição seja HEAD, a entidade deve conter uma pequena nota em hipertexto com um hiperlink para a(s) nova(s) URL(s).
- Se o código de status 301 é recebido como resposta de uma requisição de qualquer outro tipo que não seja GET ou HEAD, o cliente deve perguntar ao usuário antes de redirecionar.
Exemplo
Requisição do cliente:
GET /index.php HTTP/1.1
Host: www.example.org
Resposta do servidor:
HTTP/1.1 301 Moved Permanently
Location: http://www.example.org/index.asp
No exemplo a seguir é utilizado um arquivo .htaccess para redirecionar uma URL insegura para um endereço seguro sem o prefixo "www":
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://example.com/$1 [R,L]
No exemplo a seguir é utilizado um redirecionamento em PHP:
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://example.com/newpage.html");
exit();
?>
Isso é igualmente simples em uma configuração nginx:
location /old/url/ {
return 301 /new/url;
}
Mecanismos de busca
Tanto o Bing quanto o Google recomendam o uso de um redirecionamento 301 para alterar a URL de uma página tal como ela é mostrada nos resultados do mecanismo de pesquisa.[3][4]
Referências