Pular para o conteúdo principal

Marcus VBP

Desenvolvimento Web, Drupal, Ubuntu, Nerdices, e o que mais der na telha...

Apache

Tweet

Ativando o Recurso URLs Limpas no seu Localhost no Ubuntu

Salve amigos.

Hoje eu vou dar uma dica muito legal. Faz muito tempo que eu tentava, sem sucesso, utilizar o recurso URLs Limpas (clean urls) no meu localhost, mas eu nunca consegui. Até hoje.

Parte da culpa por nunca der dado certo era minha, e como eu já compartilhei em outro artigo a forma que eu utilizo para rodar minhas páginas localmente (criando um alias para uma pasta dentro da minha pasta pessoal), me senti na obrigação de compartilhar esta informação para "consertar" o que posso ter criado.

As urls limpas são um recurso desnecessário quando se está trabalhando localmente, mas é interessante ter esta possibilidade para pode ser realizar testes com uma agilidade maior.

Primeira Etapa: Ativando o mod_rewrite no Apache 2

É claro que eu estou considerando que você tem o Apache instalado e configurado no seu computador. Caso você não tenha, você pode seguir este tutorial.

O mod_rewrite é um módulo do Apache que permite que as urls possam ser re-escritas, através de uma regra escrita no arquivo .htaccess do site. Através do mod_rewrite eu posso, por exemplo, re-escrever as urls para que as extensões .html e .php para que não apareçam, ou mesmo posso re-escrever a url para que a extensão .php seja exibida como .asp. Mas ela é comumente utilizada para tornar as urls mais amigáveis e fáceis de se decorar (além de ajudar na indexação do site em mecanismos de busca).

O mod_rewrite já vem junto com o Apache, a única coisa que é necessário fazer é ativa-lo. Ele está armazenado na pasta /etc/apache2/mods-available/, para ativa-lo, bastar criar um link para o módulo dentro da pasta mods-enabled. Abra o terminal e digite:

sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

Agora, o próximo passo é dizer ao Apache que as diretrizes do .htaccess devem ser priorizadas sobre as diretrizes padrão. No terminal, digite:

sudo gedit /etc/apache2/sites-available/default

Agora procure por algo assim:

citação:

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# Uncomment this directive is you want to see apache2's
# default start page (in /apache2-default) when you go to /
#RedirectMatch ^/$ /apache2-default/
</Directory>

Altere o valor de AllowOverride para All.

Agora será necessário reiniciar o Apache:

sudo /etc/init.d/apache2 reload

Ou, se você seguiu o meu tutorial, pode utilizar o comando:

sudo service apache2 restart

Pronto, em teoria, já está pronto, mas se você seguiu uma das minhas dicas neste tutorial, a de mapear a pasta do Apache para uma pasta dentro da sua pasta pessoal, o recurso de url limpas não irá funcionar.

Segunda Etapa: Solucionando o problema

Primeiro, vou dizer qual o motivo de mapear o Apache para fora do diretório padrão (que é /var/www). Você evita de espalhar arquivos pessoais por todo o sistemas, concentrando-os apenas na sua pasta pessoal. Assim você não corre o risco de, num eventual backup para formatação, você fazer cópia apenas da sua pasta home, e esquecer os arquivos na pasta www.

Só que, até onde consegui fazer, o recurso de URLs Limpas só funciona nos sites salvos dentro da pasta padrão.

Existe uma forma muito simples de resolver o problema e ainda usufruir das vantagens de manter seus arquivos dentro da sua home.

O primeiro passo é dar permissões de escrita para a pasta /var/www, com um simples comando de terminal:

sudo chmod 777 /var/www

Você também pode executar o Nautilus como root e mudar as permissões em modo gráfico, mas no terminal é bem mais rápido.

E para finalizar, crie um atalho para a pasta do site que você quer utilizar url limpas dentro da pasta /var/www. Este atalho pode ser feito facilmente abrindo dois Nautilus, um apontando para a pasta /var/www e outro aberto na pasta que contém a pasta do site.

Clique sobre a pasta do site e a arraste para a janela do Nautilus aberta em /var/www, utilizando o botão do meio do mouse (geralmente é o rollover). Ao soltar o botão, vai aparecer um menu de contexto. Você escolherá a opção Criar Link Aqui.

Pronto. Agora você já pode utilizar URL Limpas no seu localhost, e ainda vai poder manter seus arquivos seguros na sua pasta home. É só lembrar que sempre que você quiser utilizar o recurso localmente, você deve fazer um atalho para a pasta dentro da pasta /var/www.

com e sem o recurso de URLs Limpas

Até a próxima.

Tópicos: 
UbuntuDrupalApache
14 comentários
Comente você também!
Inscreva-se em RSS - Apache

Siga no Twitter

Follow @marcusvbp

Assine por Email

Mais Comentados

  1. Sonho Lúcido e Paralisia do Sono (407)
  2. Relatório de Estágio completo, disponível para consulta e download (137)
  3. Usando um iPod Shuffle de 2gb sem utilizar o iTunes (30)
  4. Novo vírus do Orkut (alguma novidade?) (29)
  5. A volta do golpe do boleto falso, agora pela hostdobrasil.com (26)
  6. Hospedagem ILIMITADA por apenas 7 Reais mensais*? Só na Dreamhost! (26)
  7. Minha "lista de desejos" para o Linux (25)
  8. Webdesign no Linux Parte 4: Rodando um servidor Apache com PHP e MySQL (23)
  9. Webdesign no Linux, parte 3: programas de edição de código (23)
  10. Meu primeiro sistema em PHP e MySQL (temperado com Javascript) (23)

Populares do dia

  1. Relatório de Estágio completo, disponível para consulta e download (605)
  2. SNIPPET: Criando uma URL para uma imagem processada pelo Imagecache (190)
  3. Relatório de Estágio: Desenvolvimento do Portal Paraíba Jovem (183)
  4. Sonho Lúcido e Paralisia do Sono (156)
  5. O que é um CMS e para que serve? (118)
  6. Resumo (91)
  7. Usando um iPod Shuffle de 2gb sem utilizar o iTunes (83)
  8. Webdesign no Linux Parte 4: Rodando um servidor Apache com PHP e MySQL (82)
  9. Escapando da maldição da placa Wifi Atheros AR9285 (70)
  10. Novo Site: Natal Importados (66)
mais

Informativo

  • Relatório de Estágio: Desenvolvimento do Portal Paraíba Jovem
  • Gerenciamento de Conteúdo com o Drupal
  • Informativo

RSS Feed

  • RSS do Blog
  • RSS Mobile
  • RSS dos comentários

Arquivo mensal

  • Maio 2012 (2)
  • Abril 2012 (2)
  • Março 2012 (3)
  • Fevereiro 2012 (1)
  • Janeiro 2012 (4)
  • Dezembro 2011 (1)
  • Novembro 2011 (2)
  • Setembro 2011 (2)
  • Agosto 2011 (3)
  • Julho 2011 (2)
  • Junho 2011 (2)
Mais

Tópicos

  • ação (2)
  • Acessórios (1)
  • adsense (3)
  • Agenda (1)
  • Ajuda (1)
  • Android (2)
  • Animação (1)
  • Ano novo (1)
  • Apache (1)
  • Apple (2)
  • Arena (2)
Mais

Meu Twitter

Permitida a cópia desde que citado a fonte. [Política de Privacidade]

Powered by Drupal CMS.