Адаптируйте Apache mod_rewrite RewriteRule, чтобы он не работал с физическими каталогами - PullRequest
1 голос
/ 24 сентября 2008

У меня есть RewriteRule, который работает слишком хорошо: -)

RewriteRule ^([^/]*)/$ /script.html?id=$1 [L]

Недостаток этого правила в том, что оно также соответствует физическим каталогам, которые мне не нужны.

Как я могу сказать mod_rewrite игнорировать физические каталоги и применять указанное выше правило только в том случае, если соответствующий каталог не существует?

Ответы [ 2 ]

3 голосов
/ 24 сентября 2008

Взгляните на RewriteCond . Поместите следующее перед вашим правилом, чтобы исключить каталоги и файлы

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
0 голосов
/ 24 сентября 2008
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/$ /script.html?id=$1 [L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...