Uma coisa que sempre faço, mas sempre esqueço como fazer é habilitar o mod_rewrite do Apache.
Para quem não conhece, esse é um módulo do Apache que utiliza um mecanismo baseado em regras de reescrita (baseadas em um parser de expressões regulares).
Basicamente o módulo permite a reescrita de URL’s on the fly.
Para habilitar o módulo no Apache basta esta linha:
$ sudo a2enmod rewrite
Agora abra o arquivo de configuração
$ sudo gedit /etc/apache2/sites-available/default
Procure no seu arquivo a entrada “AllowOverride None”, no meu caso estava na linha 11.
Altere esse valor para “AllowOverride All” .
Salve o arquivo e reinicie o Apache.
$ sudo /etc/init.d/apache2 restart
Basicamente é isso, agora já é possível reescrever URL’s.

Eu também sempre acabo me esquecendo como instalar, sempre esqueço o nome do maldito “a2enmod”. Só pra complementar o artigo, quanto ao uso, falo um pouco em http://gustavodutra.com/geek/guia-completo-e-definitivo-de-como-usar-modrewrite
Abraço!
Gostei muito, parabéns, simples direto e eficaz! obrigado, vlw, abraço!