Mik*_*kee 16 asp.net iis iis-7 httphandler ihttphandler
在IIS 7上,我正在尝试将自定义HttpHandler用于我的ASP.NET Web应用程序.我使用管道模式"经典",.NET版本是4.0.30319,我的处理程序的web.config配置是:
<system.webServer>
<handlers>
<add name="MyHandler" path="*.myExtension" verb="*" type="Company.App.UI.Controls.MyHandler, Company.App.UI" resourceType="Unspecified" />
</handlers>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)
当我调用此处理程序时,我收到此错误:
HTTP Error 500.21 - Internal Server Error
Handler "MyHandler" has a bad module "ManagedPipelineHandler" in its module list
Run Code Online (Sandbox Code Playgroud)
我做了谷歌搜索时,大多数人通过重新注册ASP.NET通过ASPNET_REGIIS.EXE/i命令解决这个问题,但这不是为我工作(在命令完成后,我重新启动IIS,但同样的错误).我在两台不同的服务器上尝试过,但结果相同.
我还应该尝试什么?谢谢
Joã*_*elo 17
无法将IIS托管处理程序配置为在经典模式下运行.如果要这样做,您应该在集成模式下运行IIS.
您可以在以下博客文章中了解有关模块,处理程序和IIS模式的更多信息:
IIS 7.0,ASP.NET,管道,模块,处理程序和前提条件
对于处理程序,如果在映射中设置了preCondition ="integratedMode",则处理程序将仅以集成模式运行.另一方面,如果设置preCondition ="classicMode",则处理程序将仅以经典模式运行. 如果省略这两个,处理程序可以在两种模式下运行,尽管这对于托管处理程序是不可能的.
小智 13
幸运的是,它很容易解决.从提升的命令提示符运行以下命令:
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
Run Code Online (Sandbox Code Playgroud)
如果您使用的是32位计算机,则可能必须使用以下内容:
%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
94433 次 |
| 最近记录: |