Порядок выполнения HttpModule и ISAPI Filter в IIS7

У меня есть сайт, использующий ISAPI Rewrite , а также настраиваемый модуль HttpModule, который выполняет перенаправление URL-адресов и переписывает.

В IIS 6 все работало нормально: сначала запускался фильтр перезаписи ISAPI, а затем HttpModule. В IIS 7 (интегрированный режим) порядок теперь обратный, что создает проблему.

Моя проблема, в частности, заключается в том, что HttpModule имеет условие, при котором он будет выполнять перезапись URL с использованием context.RewritePath ]. Он явно добавит index.aspx в путь, если документ не был предоставлен, поэтому запрос к / test / переписывается в /test/index.aspx .

В какой-то момент после перезаписи пути, выполняется фильтр перезаписи ISAPI. У нас есть правило, противоположное модулю: запрос к /test/index.aspx перенаправляется 301 на / test / . Таким образом, у нас есть бесконечный цикл.

Как определяется порядок выполнения HttpModules и ISAPI Filters в IIS 7? Можно ли изменить порядок? Я нашел этот вопрос , но это не помогло. Я не являюсь мастером IIS 7, но до некоторой степени понимаю, что модули и фильтры ISAPI работают «вместе». К сожалению, они по-прежнему управляются по-другому, и я не могу понять, как заставить одного бежать раньше другого. Помогите!

Примечание: предположим, я не могу изменить существующий код. Он работал в IIS 6. Я просто хочу знать, есть ли способ заставить его работать в интегрированном режиме IIS 7.

6
задан Community 23 May 2017 в 11:45
поделиться

0 ответов

Другие вопросы по тегам:

Похожие вопросы: