Adapter un Apache mod_rewrite RewriteRule pour ne pas agir sur des répertoires physiques
-
02-07-2019 - |
Question
J'ai cette RewriteRule qui fonctionne trop bien: -)
RewriteRule ^([^/]*)/$ /script.html?id=$1 [L]
Le problème avec cette règle est qu’elle correspond également à des répertoires physiques que je ne souhaite pas.
Comment puis-je demander à mod_rewrite
d'ignorer les répertoires physiques et d'appliquer la règle ci-dessus uniquement lorsque le répertoire correspondant n'existe pas?
La solution
Jetez un coup d’œil à RewriteCond . Placez les éléments suivants avant votre règle pour exempter les répertoires et les fichiers
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
Autres conseils
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/$ /script.html?id=$1 [L]
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow