IIS 7 - отключить сопоставление обработчика

У меня свежая установка IIS 7, и в разделе "Сопоставления обработчиков" я вижу раздел "Отключенные сопоставления" и раздел "Включено". Я хочу отключить несколько расширений (cshtml, aspq и т. Д.). То есть я хочу "переместить" их из раздела "Включено" в раздел "Отключено", не удаляя их. Как мне это сделать?

(РЕДАКТИРОВАТЬ: Упс. Это IIS 7, а не 7.5.)

3 ответа

Решение

Вы не можете отключить сопоставления отдельных обработчиков в пользовательском интерфейсе. Упомянутый Марком Хендерсоном "Редактировать разрешения на объекты" применяется ко всей функции "Отображения обработчиков", поэтому он применяется ко всем сопоставлениям, а не к одному.

На самом деле есть три группы обработчиков, одна из которых требует разрешения Execute, например, "ISAPI-dll" или "CGI-exe", вторая группа, требующая разрешения "Script", все обработчики asp.net находятся в этой группе. Третья группа обработчиков требует только разрешения "Чтение", примером может служить "StaticFile". Поскольку он не выполняет процесс и не запускает сценарий, он просто читает файл из файловой системы.

Вы можете проверить это, открыв "Редактировать разрешения функций" и сняв флажок "Скрипт", большинство отображений теперь отключены. Снимите флажок "Чтение", и последние несколько включенных также будут отключены.

Чтобы удалить обработчик с сайта, откройте web.config и добавьте что-то вроде этого:

<system.webServer>
    <handlers>
      <remove name="PageHandlerFactory-Integrated-4.0"/>
    </handlers>
</system.webServer>  

Это удалит встроенный обработчик страниц ASP.NET 4, что означает, что веб-формы (aspx) больше не будут работать.

Если вы посмотрите на "Сопоставления обработчиков" для того же сайта в IIS Manager, это сопоставление по-прежнему отображается в разделе "Включено", даже если оно больше не работает для сайта.

Моей проблемой не было ни одного из других ответов, перечисленных здесь. В какой-то момент отображение обработчика "StaticFile" было отключено. Чтобы снова включить это:

  • Перейти на верхний уровень сервера, которым вы управляете
  • Перейти к отображению обработчиков
  • Нажмите StaticFile а затем нажмите Edit Feature Permissions... в правой панели.
  • Убедитесь, что Read флажок проверен.

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

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