<httpModules>
  <add name="OutputCache" type="System.Web.Caching.OutputCacheModule"/>
  <add name="Session" type="System.Web.SessionState.SessionStateModule"/>
  <add name="WindowsAuthentication"
    type="System.Web.Security.WindowsAuthenticationModule"/>
  <add name="FormsAuthentication"
    type="System.Web.Security.FormsAuthenticationModule"/>
</httpModules>

Одно из преимуществ модулей HTTP и обработчиков HTTP состоит в том, что они обеспечивают расширяемую архитектуру, которая позволяет легко подключать ваши собственные обработчики и модули. В прошлом разработчикам, которым нужна была подобная функциональность, приходилось создавать свои собственные расширения ISAPI (которые играли ту же роль, что и обработчики HTTP) или фильтры ISAPI (играющие ту же роль, что и модули HTTP). Создание упомянутых компонент отличалось высокой сложностью.

На заметку! Расширения и фильтры ISAPI встраиваются непосредственно в IIS. Обработчики и модули HTTP играют ту же роль, однако они встраиваются в ASP.NET. Например, представьте себе, что вы создаете и регистрируете специальный обработчик HTTP. Когда клиент выдает запрос на этот тип файла, он пройдет сначала от IIS до ASP.NET (через ISAPI-расширение ASP.NET). После этого ASP.NET создаст и выполнит ваш обработчик. Как результат, ваши обработчики и модули никогда не будут взаимодействовать с IIS.

      

Рис. 5.11. Архитектура обработки запросов ASP.NET

предыдущая    следующая страница   оглавление

242

Hosted by uCoz