在IIS 7.0上运行.net Framework 4.0网站的问题


119

嘿我在上运行.NET framework 4.0网站时遇到问题IIS7.0。我得到的错误是这样的:

HTTP错误404.2-找不到“由于Web服务器上的ISAPICGI限制列表设置,无法提供您所请求的页面”。

Module : IsapiModule , 
Notification : ExecuteRequestHandler, 
Handler : PageHandlerFactory-ISAPI-4.0_32bit , 
Error Code : 0x800704ec

Answers:


289

转到IIS管理器,然后单击服务器名称。然后单击IIS标头下的“ ISAPI和CGI限制”图标。将ASP.NET 4.0从“不允许”更改为“允许”。


44
强调:单击“服务器名称”而不是“站点名称”以找到选项
MacGyver

1
实际上,我什至没有CGI选项。我正在使用Windows 7、64位。试图让ssrs工作。
Steam

伙计,您节省了我的时间:)谢谢:)
Anton Baksheiev 2014年

2
确保您以管理员身份启动IIS :)
Naveed Ahmad 2014年

至少在今天,你是我最喜欢的人。这解决了我一直追求了几个小时的问题。好答案。
asantaballa 2014年

8

如果查看ISAPI和CGI限制,并且所有内容都已设置为Allowed,则请确保ASP.NET v4.0.30319处理程序甚至在列表中。就我而言,不是。这很容易忽略。


我为32 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll位添加了一个,为64位添加了另一个%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll。您可以为它们命名相同ASP.NET v4.0.30319

选中允许扩展路径执行



6

就我而言,问题更严重:事实证明asp.net未正确注册。

这个反应很好

只需在命令提示符处运行以下命令

%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i

如果我使用的是32位系统,它将看起来像以下内容:

%windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i

3

步骤1:打开IIS并单击服务器名称步骤2。双击“ ISAPI和CGI限制”步骤3。右键单击ASP.NET v4.0.30319并选择“允许”

停止并启动万维网发布服务后

1.转到开始>所有程序>管理工具>服务。2.在服务列表中,右键单击“ World Wide Web Publishing服务”,然后单击“停止”(停止服务),“启动”(在停止后启动它)或“重新启动”(在运行时重新启动服务) )。

普拉梅什


2

如果您正在运行Delphi或其他本机编译的CGI,则此解决方案将起作用:

  1. 如其他指出的那样,转到IIS管理器并单击服务器名称。然后单击IIS标头下的“ ISAPI和CGI限制”图标。

  2. 如果您允许所有操作,则仍然无法使用。您需要在“操作”(在右侧)中单击“编辑功能设置”,然后分别选中“允许未指定的CGI模块”或“允许未指定的ISAPI模块”。

  3. 点击确定


几天以来一直be不休,不得不执行“编辑功能设置”操作才能让公司的Single Sign-On插件在经典模式下工作
Jay Sullivan

1

在我们的案例中,该问题的解决方案不涉及“ ISAPI和CGI限制”设置。在操作人员意外将服务器升级到.NET 4.5之后,再次降级到.NET 4.0之后,该错误开始出现。这导致某些IIS网站忘记了它们各自正确的应用程序池,并导致某些应用程序池从.NET Framework 4.0切换到2.0。重新更改这些设置可以解决此问题。


1

如果您查看“ ISAPI和CGI限制”,并且所有内容都已设置为“允许”,并且安装的ASP.NET是v4.0.30319,则在右侧的“ 操作 ”面板上,单击“ 编辑功能设置...”。并选中两个框。就我而言,他们不是。


0

尝试将AppPool托管管道模式从“集成”更改为“经典”。


0

根据应用程序的类型,要检查的另一件事是在“应用程序池”的“高级设置”下,确保将“启用32位应用程序”设置为True。

当我遇到这个问题时,我已经检查了该线程中的所有内容,但都已正确设置,我发现这是我的问题。



-1

映射应用程序之后,请按照下列步骤操作

打开IIS,单击“应用程序池”,双击网站,将“管理管道”模式更改为“经典”,然后单击“确定”。

将.Net Framework版本更改为较低版本

然后点击确定

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.