Какая разница между <system.web> и <system.webServer>?
Каждый раз, когда я должен добавить обработчик или модуль для ASP.NET w/IIS7, инструкции всегда говорят мне, чтобы он помещал его в два места: system.web и system.webserver.
<system.web>
<httpHandlers>
</httpHandlers>
<httpModules>
</httpModules>
</system.web>
И это:
<system.webServer>
<modules>
</modules>
<handlers>
</handlers>
</system.webServer>
Какая разница между этими двумя?
Добавлено: Если я не добавлю его в свой файл system.web, мой отладчик VS 2008 также работает неправильно.
Ответы
Ответ 1
Раздел system.web предназначен для настройки IIS 6.0, а версия system.webserver используется для настройки IIS 7.0. IIS 7.0 включает новый конвейер ASP.NET и некоторые различия в конфигурации, поэтому дополнительные разделы конфигурации.
Однако...
Если вы используете только IIS 7.0 в интегрированном режиме, вам не нужно добавлять обработчики в оба раздела. Добавление его в system.web также является откатом для IIS 7.0, работающим в классическом режиме, если только я не ошибаюсь. Я не проводил обширных испытаний на этом.
Подробнее см. http://msdn.microsoft.com/en-us/library/bb763179.aspx.
Ответ 2
Первый для классического режима.
Последний относится к интегрированному режиму трубопровода (доступен в IIS7 +).