Semana Drupal 7 na Dicas-L - Dica 4 - URLs limpas
Colaboração: Cesar Brod e Joice Käfer
Data de Publicação: 28 de julho de 2011
Data de Publicação: 28 de julho de 2011
Você já deve ter notado que, na instalação padrão, o Drupal coloca o nome ?q=node
em todos os conteúdos que você criou. Os mecanismos de busca não gostam muito deste ?q=.
Para eliminá-lo você deve habilitar a opção Configuração -> Busca e Metadados -> URLs Limpas. Antes disto, porém, você deve preparar seu servidor web para que o Drupal possa usar as URLs limpas. A própria página de configuração fornece um link com as instruções completas para fazer isto. Em seu ambiente de desenvolvimento, resumidamente, você deve fazer o seguinte:
- Acesse seu ambiente de desenvolvimento com o ssh (caso não saiba como fazer isto, leia as dicas anteriores, especialmente a primeira);
- Torne-se o usuário root;
- Habilite o módulo
rewrite
do apache; Veja o exemplo em nosso ambiente:brod@brod-laptop ~ $ ssh drupal@192.168.1.126 drupal@192.168.1.126's password: drupal@drupal-devel ~ $ sudo su [sudo] password for drupal: drupal-devel drupal # a2enmod rewrite Enabling module rewrite. To to activate the new configuration, you need to run: /etc/init.d/apache2 restart
- Edite o arquivo
/etc/apache2/sites-available/default
para habilitar a reescrita de URLs.drupal-devel drupal # nano /etc/apache2/sites-available/default
Procure a linhaDirectory
usandoCtrl+W.
Acrescente logo após allow from all as seguintes linhas, conforme abaixo:<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] </Directory>
- Reinicie o apache com o comando
/etc/init.d/apache2 restart
Agora você deve poder habilitar as URLs limpas, eliminando o ?q=
em Configuração -> Busca e Metadados -> URLs Limpas.
Aproveite para conhecer e instalar os módulos XMLSitemap, PathAuto e Transliteration. Você já sabe como encontrá-los, certo? Basta escrever o nome deles logo após drupal.org/project ou usar o formulário de busca do próprio Drupal.
Cesar Brod ministra cursos in-house adequados à necessidade de sua empresa, além de atuar como coach de equipes ágeis. Visite nosso portal para saber mais ou entre em contato diretamente com o autor para mais informações.