J'utilise des règles mod_rewrite simples pour mon CMS depuis des années et je suis en train de faire une nouvelle version, je vois que le rewriteCond n'a pas de sens - j'ai la norme "si ce n'est pas un fichier "mais je vois toujours les réécritures étant évaluées même si elles ne sont pas censées le faire. Mon code de réécriture:.htaccess! -f règle ne fonctionne pas
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)$ index.php?page=$1
RewriteRule ^([^/]+)/([^/]+)$ index.php?page=$1&var=$2
je charge/page/var et il fonctionne très bien comme index.php page = & var = var, mais je tente de charger /css/file.css et charges index?. php? page = css & var = fichier.css même si /css/file.css est un fichier, donc toute la section de réécriture ne devrait même pas être évaluée. Je n'ai jamais vu htaccess apparemment défier sa propre logique, quelqu'un peut-il m'aider à comprendre cela? Est-ce que quelqu'un a jamais rencontré quelque chose comme ça?
+1 pour les choses RewriteLog, cela m'a aidé à déboguer mes règles de réécriture. –