Назад | Перейти на главную страницу

Как определить, какое правило перезаписи срабатывает в IIS 7.5?

У меня есть набор правил перезаписи (я бы сказал, около 40-50) для данного сервера. Это в основном для обработки и перенаправления искаженных URL-адресов, чтобы плохие ссылки по-прежнему направлялись туда, где они должны были идти.

Я наткнулся на URL-адрес, который выполняет перенаправление, и не могу понять, какое правило перезаписи он применяет.

Мой опыт - Apache, и в этом случае я бы просто включил журнал перезаписи и посмотрел на зарегистрированный вывод, чтобы выяснить, что происходит. Есть ли эквивалентный способ сделать это в IIS?

бонусный раунд

Есть ли у меня способ просмотреть и отредактировать правила перезаписи в текстовом файле, а не в графическом интерфейсе?

Основной ответ:

Вы можете использовать «Отслеживание невыполненного запроса» возможность отслеживать все виды запросов в IIS 7.x (даже переписанные). Вот прекрасная статья с learn.iis.net только на этом.

Взвешивание в бонусном раунде:

В зависимости от области применения правил перезаписи (в зависимости от конфигурации) правила хранятся либо в:

  • applicationHost.config - раздел: конфигурация / system.webServer / rewrite / globalRules
  • web.config - раздел: конфигурация / system.webServer / rewrite / rules

Все файлы конфигурации IIS в основном представляют собой файлы XML, поэтому запустите свой любимый редактор XML и редактируйте. Помните, что IIS 7.x (в частности, служба WAS, которая собирает и проверяет изменения конфигурации на лету) очень чувствительна к искаженному XML или файлам конфигурации, которые не соответствуют схеме IIS, поэтому обязательно сделайте резервную копию файлы перед их редактированием.

Увидеть Справочник по настройке IIS.NET примеры встроенных разделов и свойств или перейдите к MSDN и ознакомьтесь с документацией