<modules runAllManagedModulesForAllRequests =“true”/>含义
我想知道是什么意思
<modules runAllManagedModulesForAllRequests="true" />
我正在使用IIS 7.5,我有一个简单的Web应用程序。 我需要写在我的web.config文件中。 我也写了jQuery的Ajax调用几个http处理程序。 我正在使用表单身份validation和asp.net 4.0。
我怎样才能确定哪个模块我必须运行,哪些不是?
模块前提条件:
IIS核心引擎使用先决条件来确定何时启用特定的模块。 性能的原因,例如,可能会确定您只想执行托pipe模块的请求也转到托pipe处理程序。 以下示例(
precondition="managedHandler"
)中的precondition="managedHandler"
仅对表单身份validation模块启用了也由托pipe处理程序处理的请求,例如对.aspx或.asmx文件的请求:<add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" preCondition="managedHandler" />
如果您删除了属性
precondition="managedHandler"
,则表单身份validation也适用于未由托pipe处理程序(例如.html,.jpg,.doc)提供的内容,也适用于传统ASP(.asp)或PHP(.php )扩展。 有关为所有内容启用ASP.NET模块的示例,请参阅“ 如何利用IIS集成pipe道 ”。无论“
managedHandler
”的先决条件如何,您还可以使用快捷方式为所有请求运行所有托pipe(ASP.NET)模块。要使所有托pipe模块都可以针对所有请求运行,而无需configuration每个模块条目以删除“
managedHandler
”前提条件,请使用<modules>
部分中的runAllManagedModulesForAllRequests
属性:<modules runAllManagedModulesForAllRequests="true" />
当您使用此属性时,“
managedHandler
”前置条件不起作用,所有托pipe模块都将针对所有请求运行。
从IIS模块复制概述:先决条件