Redirecionamento 301

Muitas vezes no desenvolvimento de um website queremos mudar uma página (URL) de local ou até mesmo trocar o nome dela. Isto é bem simples quando se trata do nível operacional: renomeamos o arquivo ou ainda movemos de diretório simplesmente. Infelizmente não podemos pensar como no nosso computador pessoal. Não basta apenas renomear ou mover o arquivo, você deve editar todas as referências que ele recebe.

Mas como já vimos aqui na Agência Mestre, a referência (link) na web é a base dos algoritmos de rankeamento, e como o Google baseou o Pagerank, sendo assim, pode existir um conjunto grande de páginas que apontam (links) para este seu arquivo ou pasta, os quais não vão saber que o seu arquivo mudou. Assim como estes links, os robôs de busca não saberão que a página foi renomeada ou movida.

Desta forma, necessitamos de um método que indique que a sua página A foi renomeada ou movida para a página B. Este método é chamado de redirecionamento.

Vimos algum tempo atrás, uma explicação sobre os mais variados códigos de redirecionamento que podemos enviar ao navegador do usuário e na explicação, vimos que o código 301 indica que a sua página foi “movida permanentemente”, ou seja, ela foi renomeada ou movida para um novo local de forma definitiva.

Vejamos abaixo a aplicação do redirecionamento para as linguagens PHP, ASP, htaccess, Coldfusion e Ruby on Rails:

Redirecionamento 301 com PHP

<?
Header( “HTTP/1.1 301 Moved Permanently” );
Header( “Location: http://www.meusite.com.br” );
?>

Redirecionamento 301 com ASP

<%@ Language=VBScript %>
<%
‘ Permanent redirection
Response.Status = “301 Moved Permanently”
Response.AddHeader “Location”, “http://www.meusite.com.br/”
Response.End
%>

Redirecionamento 301 com ASP .NET

<script runat=”server”>
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = “301 Moved Permanently”;
Response.AddHeader(“Location”,”http://www.meusite.com.br”);
}
</script>

Redirecionamento 301 com JSP (JAVA)

<%
response.setStatus(301);
response.setHeader( “Location”, “http://www.meusite.com.br/” );
response.setHeader( “Connection”, “close” );
%>

Redirecionamento 301 com Coldfusion

<.cfheader statuscode=”301″ statustext=”Moved permanently”>
<.cfheader name=”Location” value=”http://www.meusite.com.br”>

Redirecionamento 301 com CGI(Perl)

$q = new CGI;
print $q->redirect(“http://www.meusite.com.br/”);

Redirecionamento 301 com Ruby on Rails

def old_action
headers[“Status”] = “301 Moved Permanently”
redirect_to “http://www.meusite.com.br/”
end

Redirecionamento 301 no WordPress

Escrevemos aqui no blog um artigo com algumas opções de plugins para você efetuar um redirecionamento 301 no WordPress.

Redirecionamento 301 com .htaccess

redirect 301 /antigo/arquivo_antigo.htm http://www.seusite.com.br/aquivo_novo.htm

.htaccess – Redirecionando um domínio antigo para um novo

Algumas vezes precisamos mudar o nosso domínio e não queremos perder nenhum link antigo, nenhum visitante que acesse o site antigo ou o principal, não perdermos Pagerank. Então, necessitamos redirecionar todos os cliques do domínio antigo para o novo.

Para redirecionar todos os arquivos e pastas do seu antigo domínio para o seu novo domínio siga corretamente a seguinte regra:

Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.novosite.com.br/$1 [R=301,L]

Troque o “www.novosite.com.br” no código acima pelo novo nome do seu domínio.

O arquivo .htaccess deve ser inserido no arquivo raiz do seu antigo domínio, ou seja, onde está localizado o seu arquivo index.

Observação: Este método de redirecionamento irá apenas funcionar em servidores Apache com o módulo Mod_rewrite habilitado. Para habilitá-lo siga as instruções deste link.

Redirecionamento para inserir o WWW no início do seu domínio

A falta de uso deste código de redirecionamento implica na divisão da autoridade do seu website, pois uma série de links pode apontar para http://seusite.com.br e outros links podem apontar para http://www.seusite.com.br. Outro problema gerado é o conteúdo duplicado, pois em ambas as URLs você consegue acessar o mesmo conteúdo.

Para prevenir estes dois problemas, você pode utilizar o código abaixo em seu arquivo .htaccess:

Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^seusite.com.br [NC]
rewriterule ^(.*)$ http://www.seusite.com.br/$1 [r=301,NC]

Troque o “www.novosite.com.br” no código acima pelo novo nome do seu domínio.

O arquivo .htaccess deve ser inserido no arquivo raiz do seu antigo domínio, ou seja, onde está localizado o seu arquivo index.
Observação: Este método de redirecionamento irá apenas funcionar em servidores Apache com o módulo Mod_rewrite habilitado. Para habilitá-lo siga as instruções deste link.

Verificação do seu redirecionamento

A fase mais importante do redirecionamento é o teste do mesmo. Mas como fazer isto?

Existem várias ferramentas na web que podem lhe devolver o código de redirecionamento, mas eu sugiro a nossa ferramenta HTTP Header Checker, que faz uma análise bem simples e objetiva do seu redirecionamento. Não esqueçam de testar!

Continue Aprendendo…

A recomendação é que além de entender como funciona o redirecionamento 301, que você continue estudando SEO. Como o tema é bem denso, sugiro que você assista o vídeo abaixo: