Configurar URLs amigáveis no Apache

As aplicações web dos dias de hoje utilizam muito o que se convencionou chamar URLs amigáveis que nada mais são que URLs sem os caracteres especiais como &, /, etc.

Para que seu Apache consiga interpretar isso, é necessário alterar uma linha do arquivo /etc/apache2/mods-enabled.

Atenção: a responsabilidade por qualquer ação feita em seu sistema é só sua! Na dúvida, não faça nada.

Para Ubuntu:

1) sudo cp /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

2) sudo vim /etc/apache2/sites-available/default

3) Procure o bloco abaixo e altere AllowOverride None para AllowOverride All

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

4) sudo /etc/init.d/apache2 restart

Para Fedora:

1) sudo vim /etc/httpd/conf/httpd.conf e altere AllowOverride None para AllowOverride All

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

2) sudo vim /etc/php.ini e altere ou preencha o date.timezone como abaixo:

[Date]
; Defines the default timezone used by the date functions
; http://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone
date.timezone = America/Sao_Paulo

3) sudo service httpd restart

Perceba que no Ubuntu não há necessidade de configurar o php.ini, basta alterar o mod rewrite. Não sei porque para o Fedora já não fica configurado, só dá mais trabalho, como tudo no Fedora.

Lembrando que vim é um editor de texto, ou seja, você pode usar o que preferir.

É isso aí, abraço.