Переписать URL, regex help - PullRequest
       18

Переписать URL, regex help

0 голосов
/ 13 января 2011

Я использую следующий URL перезаписи:

RewriteRule /([^/?.]+) /somedir/somefile.aspx\?Name=$1 [NC,L]

, который отлично подходит для моего использования, но мне нужно ограничить его, чтобы он действовал только для текста, который не содержит имени файла ... например, если я использую URL www.somedomain.com/SomeName, он работает нормально, но он также срабатывает, если я использую www.somedomain.com/TestPage.aspx

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

Любая помощь с этим регулярным выражением будет принята с благодарностью.

1 Ответ

1 голос
/ 13 января 2011

попробуйте добавить это до правила перезаписи:

RewriteCond %{REQUEST_FILENAME} !-f

это условие проверяет, существует ли запрошенный файл, и возвращает true, если его нет (поскольку оно отменяется с помощью!).

если вам не нужно запускать правило и для каталогов, добавьте также эту строку:

RewriteCond %{REQUEST_FILENAME} !-d
...