J'essaie de faire en sorte que le mod rewrite fonctionne sur mon Mac. Voici le contenu du fichier .htaccess:
<Files *\.ini>
order allow,deny
deny from all
</Files>
RewriteEngine on
RewriteRule .* index.php
Je sais que cette fonction est active, car elle bloque correctement les fichiers .ini et semble réécrire la demande fictive /foo
sur index.php
, car il s’agit de l’erreur constatée dans le navigateur:
L'URL demandée /Users/rwel/Sites/dev/quaestio/index.php est introuvable sur ce serveur.
Le fichier index.php ne contient actuellement qu'une instruction de sortie à des fins de test, et il fonctionne quand on l'appelle directement. Alors, la question est, qu'est-ce qui ne va pas? Je suis allé dans le journal des erreurs Apache, et voici ce que j'ai vu:
[Jeu. Nov. 03 14:36:02 2011] [erreur] [client 127.0.0.1] Le fichier n'existe pas:/Library/WebServer/Documents/Users
Le problème peut donc provenir du fait qu’il ne s’agit pas d’une recherche à la racine, mais par rapport au répertoire /Library/WebServer/Documents
. Ai-je raison? Comment puis-je réparer cela?
Comme Rijk ne voulait pas répondre à sa propre question, la solution consistait à ajouter cette ligne dans le fichier .htaccess.
RewriteBase /~rwel/dev/quaestio
J'espère que ceci aide quelqu'un d'autre.
Que diriez-vous de rediriger vers un fichier HTML simple et voir si cela fonctionne?
Essayez également d'utiliser cette syntaxe:
RewriteRule ^. * $ /Index.php