Основний двигун IIS використовує передумови, щоб визначити, коли ввімкнути певний модуль. Наприклад, причини продуктивності можуть визначити, що ви хочете виконувати лише керовані модулі для запитів, які також переходять до керованого обробника. Попередня умова в наступному прикладі ( precondition="managedHandler"
) дозволяє лише модуль аутентифікації форм для запитів, які також обробляються керованим обробником, наприклад запитами файлів .aspx або .asmx:
<add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" preCondition="managedHandler" />
Якщо ви видалите атрибут precondition="managedHandler"
, аутентифікація форм також застосовується до вмісту, який не обслуговується керованими обробниками, такими як .html, .jpg, .doc, а також для класичних розширень ASP (.asp) або PHP (.php). Див. " Як скористатися перевагою інтегрованого трубопроводу IIS " для прикладу включення модулів ASP.NET для запуску всього вмісту.
Ви також можете скористатися ярликом, щоб увімкнути всі керовані (ASP.NET) модулі для запуску всіх запитів у вашій програмі, незалежно від managedHandler
передумови.
Щоб увімкнути всі керовані модулі для запуску для всіх запитів без налаштування кожного запису модуля, щоб видалити managedHandler
попередню умову, використовуйте runAllManagedModulesForAllRequests
властивість у <modules>
розділі:
<modules runAllManagedModulesForAllRequests="true" />
При використанні цього властивості managedHandler
попередня умова не має ефекту, і всі керовані модулі працюють для всіх запитів.