Estou tentando configurar uma biblioteca de roteamento PHP. Eles dão este exemplo para um arquivo .htaccess:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
Como não consegui fazer isso funcionar, tentei ativar o mod_rewrite, mas diz "Reescrita de módulos já ativada".
Por que não está funcionando corretamente? Obrigado! Estou executando o Ubuntu Precise 12.04 e apache2.2.22. (Verificado se há atualizações)
EDIT: Mais alguns detalhes, é uma compilação vagabunda do PuPHPet, a reescrita deve estar ativada.
apache2
mod-rewrite
Freddy Heppell
fonte
fonte
AllowOverride
é necessário para a configuração em questão.Allow from All
não tem nada a ver com a pergunta e pode não ser apropriado para o ambiente do @ randomdev.<Directory "/path/to/document/root/">
Esqueci de mudar/path/to/document/root/
para a raiz do meu projeto.Primeiro, defina sua configuração httpd para isso (o caminho pode diferir um do outro. No meu ubuntu, ele é colocado em / etc / apache2 / sites-available / default):
Depois disso, você deve ativar o mod_rewrite com este comando:
O último, reinicie o serviço apache :
Para garantir isso, você pode verificá-lo novamente no phpinfo em Configuração> apache2handler> Módulos carregados , deve ser escrito
mod_rewrite
e significa que o mod_rewrite está ativado.fonte
Eu tive o problema semelhante, mas as outras respostas não me ajudaram. Esta linha no início de
.htaccess
resolveu meu problema:fonte