Fazendo redirecionamento permanente com o PHP
Quando você altera o endereço de suas páginas, é importante informar aos seus visitantes e aos mecanismos de busca os novos endereços.
Para manter a indexação no Google e demais mecanismos é de suma importância que você envie os cabeçalhos corretos que os mesmos entendam que devem transferir tudo para o novo endereço.
O modo mais correto de fazer é informando que houve uma transferência permanente (existe um certo desentendimento nesta área entre alguns SEOs, porém, o próprio Google recomenda esta prática).
A maneira mais simples de fazer isso é utilizando o mod_rewrite para reescrever as URLs passando os novos endereços.
Porém, nem sempre isso é possÃvel, alguns motivos para isso não funcionar:
- Você está em um servidor Windows.
- Você não tem acesso ao .htaccess.
- O mod_rewrite não está instalado ou ativado no seu servidor.
- O mod_rewrite se recusa a funcionar mesmo que devesse.
- Etc...
Quando fiz a mega mudança no Diversos, me encontrei no quarto problema.
O servidor tinha tudo para funcionar, escrevi as regras corretamente, mas algumas URLs se recusavam a mudar para o novo endereço.
Acessando a central webmaster do Google, pude verificar que as páginas que aceitaram o redirecionamento já haviam sido identificadas e a migração da indexação já havia começado.
Porém as que se recusavam a funcionar, além de continuarem indexadas, estavam prejudicando os novos endereços, pois o Google está classificando as novas como conteúdo duplicado.
Vendo que não haveria jeito, resolvi tentar apelar para o PHP.
A vantagem de usar o PHP nestes casos é que funcionará em qualquer servidor que tenha suporte ao mesmo, ou seja, qualquer servidor que rode o Wordpress pode utilizar desta artimanha.
O código é bastante simples, eu queria trocar o inÃcio do endereço que apontava para diversos.brpoint.net para www.diversos.org.
Então, bastaria informar que é um redirecionamento com código 301, mudar o domÃnio e mover para o novo endereço.
Para conseguir estes passos, basta usar o código abaixo:
$loc = "http://www.diversos.org" .$_SERVER['REQUEST_URI'];
header( "HTTP/1.1 301 Moved Permanently" );
header("Location: ".$loc);
exit;
?>
A primeira linha pega a página requisitada e adiciona o novo domÃnio.
A segunda linha, informa o tipo de redirecionamento, poderÃamos usar outros, mas como o objetivo é transferir a indexação para o novo endereço, o ideal é usar o código 301.
Na quarta linha, fazemos o redirecionamento efetivo.
A quinta linha garante que mais nada será executado.
Coloque este código em um arquivo chamado index.php e coloque este arquivo no diretório do site que você quer redirecionar.
Lembrando de trocar o endereço para o de seu novo site.
Compare Preços de: PHP
[tags]PHP[/tags]
Artigos relacionados
- Mudança de URLs
- Primeira página para o termo SEO
- SOS Wordpress
- Feeds, a saga continua
- Novo tema e correção de problemas













Fala Bruno excelente a dica!
Também fiz este tipo de migração no começo do mês, mas usei o htaccess.
Até agora tá tudo beleza, mas alterei um tipo de estrutura de url, e quando as mesmas são acessadas retorna-se o erro 404.
A quantidade é bem grande. Você acha que isso pode prejudicar meu blog? Devo bloquear a indexação das mesmas ou o próprio Google se vira com isso? É que são TANTAS que é absolutamente impossÃvel alterar manualmente
Um abraço!
Thiago, 404 nunca é bom para o Google.
Eu não tomei esse cuidado quando migrei do domÃnio antigo para o brpoint e fiquei sem a transferência de PR, esse blog já era para ser PR 6 ou 7, mas como perdi boa parte dos links antigos, continuo no 5.
Não tem como criar uma regra para fazer o redirecionamento ou usar o plugin que comentei no tutorial de transferência?
Abraço
[...] http://www.brpoint.net/arquivo/seo/fazendo-redirecionamento-permanete-com-o-php.html [...]
[...] o PHP, como explicado no artigo: PLAIN TEXT PHP: <?php if ($_SERVER['HTTP_HOST']=='www.diegoxavier.com') { [...]
Valeu pela dica. Foi bastante útil.
Parabéns pelos blogs.
Dario, obrigado.
Abraço
Estou precisando de sua ajuda, o meu blog está dentro de uma pasta no meu servidor e as pessoas o acessavam pois na página principal tinha um frame que puxava o conteúdo da pasta, mas agora quero que a pessoa ao clicar no endereço principal automaticamente abra o endereço da pasta.
como posso fazer isso?
Obrigado
Rodrigo
Rodrigo, pode tentar por .htaccess ou por php, para discutir mais especificamente sua necessidade, por favor, use o fórum.
Rpz não consegui fazer tenho um site http://www.muipnotic.com que ele redireciona para o http://mndo.sytes.net:8090 mas queria que ele ficasse o tempo todo puxando do http://www.muipnotic.com como faço isso??