我在设置本地网站时遇到问题。
该项目正在使用ASP.NET Framework 4.0,我使用我的DefaultAppPool将4.0与托管管道模式一起使用为集成。
这是我得到的错误:
HTTP Error 500.21 - Internal Server Error
Handler "PageHandlerFactory-Integrated" has a bad module "ManagedPipelineHandler" in its module list
Module IIS Web Core
Notification ExecuteRequestHandler
Handler PageHandlerFactory-Integrated
Error Code 0x8007000d
Requested URL http://localhost:80/default.aspx
Physical Path C:\Snugabye\Website\default.aspx
Logon Method Anonymous
Logon User Anonymous
Most likely causes:
Managed handler is used; however, ASP.NET is not installed or is not installed completely.
There is a typographical error in the configuration for the handler module list.
Things you can try:
Install ASP.NET if you are using managed handler.
Ensure that the handler module's name is specified correctly. Module names are case-sensitive and use the format modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule".
在控制面板下 - >程序 - >打开/关闭Window功能所有我看到的是Microsoft .NET Framework 3.5.1,关于4.0没有什么我缺少的东西?
答案 0 :(得分:46)
您是否在IIS中注册了.NET? 如果没有运行以下命令:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
您需要从提升的命令提示符(...以管理员身份运行)执行此操作。
答案 1 :(得分:4)
我猜这是基于你的.NET版本,你在Windows 7上。
根据.NET 4.0 Versions and Dependencies:
(。NET 4.0)未作为Windows操作系统的一部分安装,但可以 在Windows XP,Windows Server 2003和更高版本上单独安装 Windows版本。
关注此link for an installer of .NET 4.0
安装后,您可能需要进行其他配置。请参阅this blog post。
在链接丢失的情况下摘自博文:
在计算机上安装.NET Framework 4.0之后,需要对IIS进行一些配置更改才能运行ASP.NET 4.0页面:
首先将应用程序池设置为在ASP.NET v4.0“模式”下运行。
然后,您需要允许ASP.NET v4.0.x运行。这是在服务器级别上找到的ISAPI和CGI限制中完成的。
(转到管理工具> Internet信息服务管理器>单击服务器。然后打开ISAPI和CGI限制>查找ASP.NET V4.0.XXX确保限制设置为允许。如果设置为“不允许”,请双击它,然后选中“允许扩展路径执行。点击确定。”
注意:根据安装顺序,您可能还必须从命令行运行aspnet_regiis.exe -i
以在IIS上“重新安装”ASP.NET。
Instructions for configuring ISAPI and CGI restrictions for IIS 7.5 on various Windows flavors.
答案 2 :(得分:4)
我遇到了同样的问题。当我在App pool.NET框架版本上检查时它是v2.0。我的应用程序与4.0兼容。我运行下面的命令解决了问题,现在我能够获得我的网络服务
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
但是在运行这些命令后,默认的.NET框架也改为v4.0
答案 3 :(得分:0)
您必须将IIS注册到框架4才能正确执行它。 您必须按照下面给出的开始菜单获取VS(已安装版本)命令提示符 开始 - >所有程序 - > Microsoft Visual Studio(已安装的版本) - > Visual Studio工具 - > Visual Studio命令提示符(已安装版本)
有关详情,请尝试以下链接: https://forums.asp.net/t/1587832.aspx?Problem+with+ExecuteRequestHandler+in+iis7