Usando mod_rewrite para manter urls ao migrar seu site para Drupal

Filed in Drupal 0 comments

Bom, estava fazendo uma migração de um site para drupal, este site possui diversos artigos que eram acessados através de um padrão de url:

http://www.site.com/ler.php?id=455

Ao converter para o drupal eu precisava fazer com que essas urls continuassem funcionando pois é um site já bastante indexado por motores de busca e diversas referências externas, entao utilizei o módulo do apache chamado mod_rewrite, muito útil nessas situações..

editando o arquivo .htaccess no diretório root da instalação do drupal adicione a regra abaixo um pouco antes da última regra padrão do Drupal.

RewriteCond %{QUERY_STRING} ^id=([0-9]+)$
RewriteRule ler.php node/%1 [L]

o comando RewriteCond define a condição para a regra ser executada, nesse caso é necessário possuir a variável id com um valor numérico. Assim quando acessarmos a url http://www.millarch.org/ler.php?id=3 irá funcionar como se estivesse acessando a url: http://www.millarch.org/node/3.

let’s go to part 2!

bom, o recurso acima não fica tão legal porque apenas fazemos com que a url antiga funcione e assim as urls antigas continuariam sendo indexadas, então para melhorar esta situação precisamos fazer também um redirect usando (301 Moved Permanently) e assim informamos ao indexador que a url foi alterada e assim atualizar a referência..

vamos agora fazer com que a regra redirecione para a nova url.

RewriteCond %{QUERY_STRING} ^id=([0-9]+)$
RewriteRule ler.php http://www.millarch.org/node/%1? [R,L]

agora irá funcionar assim:

http://www.millarch.org/ler.php?id=3 irá redirecionar para http://www.millarch.org/node/3

Não existe uma forma melhor de fazer isso, pois toda a url acessada passa obrigatoriamente pelo arquivo index.php, esta regra está definida no arquivo .htaccess, então fazendo com o mod_rewrite podemos aplicar nossa regra antes de executar a regra padrão do drupal ( redirect to index.php ).

Posted by nei   @   29 September 2008 0 comments
Tags : ,

Share This Post

RSS Digg Twitter StumbleUpon Delicious Technorati

0 Comments

No comments yet. Be the first to leave a comment !
Leave a Comment

Name

Email

Website

Previous Post
Next Post
»
EXULT designed by ZENVERSE  |  In conjunction with Reseller Hosting from the #1 Web Hosting Provider - HostNexus.