Analytics

17 set, 2012

SearchCast: Redirecionamento 301- PHP, ASP, HTACCESS, Coldfusion, CGI, Ruby

Publicidade

Ao trabalhar SEO em um site já existente, ou ao criar um novo website, muitas vezes mudamos o endereço destas páginas (URL), causando quebra de links e mensagens de erro aos usuários. Nestes casos, é necessário realizar um redirecionamento 301 ou 302, pois erros do tipo 404, onde os links não correspondem ao endereço real da página, resultam em negatividade no rankeamento.

Agora que já foi explicado um pouco sobre a teoria, vamos ao que interessa: aprender a fazer o redirecionamento 301

Redirecionamento 301 com .htaccess

redirect 301 /diretorio/antigo_arquivo.htm http://www.exemplo.com.br/novo_arquivo.htm

Se precisarem mudar o domínio inteiro, para não perder a força dos links que apontam para seu site, ou visitante. Faça da seguinte forma:

Redicionando um domínio antigo para um novo com o .htacess

Options +FollowSymLinks

RewriteEngine on

RewriteRule (.*) http://www.sitenovo.com.br/$1 [R=301,L]

Substitua www.sitenovo.com.br pelo novo domínio de seu site e insira-o na raíz do site antigo com o nome de .htaccess. Este método funciona apenas para servidores apache com mod_rewrite.

Redirecionamento em PHP:

<?

Header( “HTTP/1.1 301 Moved Permanently” );

Header( “Location: http://www.seusite.com.br” );

?>

Redirecionamento em ASP:

  • 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 ASP:

<%@ Language=VBScript %>

<%

Response.Status=”301 Moved Permanently”

Response.AddHeader “Location”,”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”

Redirecionamento 301 com Coldfusion

<.cfheader statuscode=”301″ statustext=”Moved permanently”>

<.cfheader name=”Location” value=”http://www.meusite.com.br”>

Como redirecionar domínio sem www para o domínio com www

Em casos nos quais o domínio responde como http://exemplo.com.br, ou http://www.exemplo.com.br, temos que fazer com que o domínio sem www seja redirecionado para o domínio com o www; assim sendo, acumulamos a maior força possível. Caso não façam este redirecionamento, isso resultaria em conteúdos duplicados,e links para os dois domínios.

Para colocar o www no início do domínio, insira o código abaixo em seu .htaccess na raiz do site:

RewriteEngine on

Options +FollowSymlinks

rewritecond %{http_host} ^seusite.com.br [NC]

rewriterule ^(.*)$ http://www.seusite.com.br/$1 [r=301,NC]

Nos servidores Windows, usa-se um componente chamado Isapi Rewrite, que trabalha da mesma forma que o mod_Rewrite do Apache, manipulando e “reescrevendo” a URL do site. Você pode utilizar este componente de diversas formas baseado em expressões regulares.

  • Windows 2003:
  1. Isapi Rewrite 2: Trabalha com o arquivo de configuração httpd.ini
  2. Isapi Rewrite 3: Trabalha com o arquivo de configuração .htaccess
  • Windows 2008:
  1. Isapi Rewrite 3: Trabalha com o arquivo de configuração .htaccess

Qual o impacto no redirecionamento de Servidores Windows?

A maioria dos sites que utilizam servidores Windows funcionam de forma muito similar aos servidores Linux, podendo utilizar um arquivo .htaccess para fazer este redirecionamento, da mesma forma que faria em um servidor Linux.

RewriteCond Host: ^seusite.com.br

RewriteRule (.*) http\://www.seusite.com.br [RP,L]

RewriteCond Host: ^http\://seusite.com.br

RewriteRule (.*) http\://www.seusite.com.br [RP,L]