J'essaie de configurer une bibliothèque de routage PHP. Ils donnent cet exemple pour un fichier .htaccess:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
Je n'ai pas pu faire fonctionner cela, j'ai donc essayé d'activer mod_rewrite, mais il dit "La réécriture du module est déjà activée".
Pourquoi ne fonctionne-t-il pas correctement? Merci! J'utilise Ubuntu Precise 12.04 et apache2.2.22. (Vérifié pour toutes les mises à jour)
EDIT: Quelques détails supplémentaires, c'est une construction vagabonde PuPHPet, la réécriture devrait être activée.
apache2
mod-rewrite
Freddy Heppell
la source
la source
AllowOverride
est nécessaire pour la configuration en question.Allow from All
n'a rien à voir avec la question et peut ne pas convenir à l'environnement de @ randomdev.<Directory "/path/to/document/root/">
J'ai oublié de passer/path/to/document/root/
à la racine de mon projet. Merci!Tout d'abord, définissez votre configuration httpd sur ceci (le chemin peut différer les uns des autres. Dans mon ubuntu, il est placé dans / etc / apache2 / sites-available / default):
Après cela, vous devez activer mod_rewrite avec cette commande:
Le dernier, redémarrez votre service apache :
Pour vous assurer que vous pouvez le vérifier à nouveau à partir de phpinfo dans Configuration> apache2handler> Modules chargés, il doit être écrit
mod_rewrite
et cela signifie que mod_rewrite est activé.la source
J'ai eu le même problème, mais les autres réponses ne m'ont pas aidé. Cette ligne au début de
.htaccess
résolu mon problème:la source