2011-09-04 37 views
0

我在.NET 4.0 Web应用程序中使用httpModule来重写URL。本地,这工作正常。但是将它移出给主机,它根本不会被解雇。为什么我的httpModule BeginRequest不会触发?

我设立在网络配置如下......

<httpModules> 
<add type="PageLoader" name="PageLoader"/> 
</httpModules> 

我还添加了此作为一种尝试,但它没有工作......

<modules runAllManagedModulesForAllRequests="true"> 
    <add type="PageLoader" name="PageLoader" preCondition="managedHandler" /> 
</modules> 

回答

0

类型应该是形式

"FullyQualifiedTypeName, Namespace (or DLL Name)" 

,所以如果你的模块是:YourApp.Web.Extensions.HttpModules.MyHttpModule

则声明应该是:

<add name="MyHttpModule" type="YourApp.Web.Extensions.HttpModules.MyHttpModule, YourApp.Web" /> 

另请注意,这IIS7需要进入Web.config中的system.webserver元素:

<system.webserver> 
    <add name="MyHttpModule" type="YourApp.Web.Extensions.HttpModules.MyHttpModule, YourApp.Web" /> 
</system.webserver> 
相关问题