Исключите каталог из перезаписи с использованием isapi Rewrite 3

StackOverflow https://stackoverflow.com/questions/2669385

Вопрос

В основном я недавно добавил правило ниже в My httpd.conf для isapi Rewrite на сервере IIS, чтобы убедиться, что он всегда по умолчалах, чтобы по умолчанию в строке файла и имена каталогов.

RewriteRule ^(.*[A-Z].*)$ $1 [CL,R=301,L]

Это все хорошо и денди для каждой части сайта, за исключением одного каталога, который мы можем позвонить /MisbehavingDir, код в этом конкретном каталоге заполнен смешанными именами файлами и множеством сценариев для серверов и клиента, которые должны были бы быть переписаны, чтобы использовать все строчные, чтобы работать правильно (с переписанием выше, кажется, ударил Пару 301-х годов в неправильных местах, которая вызывает то, что часть сайта плохо функционирует, чтобы сказать наименее).

Поскольку я не в настроении для переписывания этой части сайта, я бы хотел найти хороший способ изменить вышеупомянутое регулярное выражение, чтобы он соответствовал всем, кроме пути, начиная с MISBEHAVINGDIR, и с момента моего регенератора-фу Достаточно я подумал, что спрошу здесь.

Есть ли простое «красивое» решение для этого, чтобы кто-то хочет поделиться или я должен просто отложить несколько дней, чтобы переписать приложение, затем проверить его и пройти через этот танец?

Это было полезно?

Решение

Ну, видимо, хитрость было добавить оператор Rewritecond, которое выглядит что-то вроде RewriteCond %{URL} ^(?!/MisbehavingDir/.*$) Чтобы сделать ISAPI Rewrite пропустить следующее правило.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top