嘿,我在.NET framework 4.0
上运行IIS7.0
网站时遇到了问题。
我得到的错误就像:
HTTP错误404.2 - 未找到“由于Web服务器上的ISAPI
和CGI
限制列表设置,无法提供您请求的页面。”
Module : IsapiModule ,
Notification : ExecuteRequestHandler,
Handler : PageHandlerFactory-ISAPI-4.0_32bit ,
Error Code : 0x800704ec
答案 0 :(得分:284)
转到IIS管理器并单击服务器名称。然后单击IIS标头下的“ISAPI和CGI限制”图标。将ASP.NET 4.0从“不允许”更改为“允许”。
答案 1 :(得分:8)
如果您查看 ISAPI和CGI限制,并且所有内容都已设置为允许,请确保 ASP.NET v4.0.30319 < / strong>处理程序甚至在列表中。在我的情况下,他们不是。这很容易被忽视。
我为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
。
选中允许执行扩展路径。
答案 2 :(得分: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 :(得分:5)
(PC-Name)\
。答案 4 :(得分:3)
步骤1:打开IIS并单击服务器名称 步骤2.双击“ISAPI和CGI限制” 步骤3.右键单击ASP.NET v4.0.30319并选择“允许”
在 停止并启动World Wide Web Publishing服务
1.转到开始&gt;所有程序&gt;管理工具&gt;服务。 2.在服务列表中,右键单击“万维网发布服务”,然后单击“停止”(停止服务),“启动”(在停止后启动它)或“重新启动”(在服务运行时重新启动服务) )。
Pramesh
答案 5 :(得分:2)
如果您正在运行Delphi或其他本机编译的CGI,此解决方案将起作用:
正如其他人指出的那样,转到IIS管理器并单击服务器名称。然后单击IIS标题下的“ISAPI和CGI限制”图标。
如果您拥有所有允许的内容,它仍然无效。您需要单击Actions(右侧)中的“编辑功能设置”,并分别选中“允许未指定的CGI模块”或“允许未指定的ISAPI模块”。
点击确定
答案 6 :(得分:1)
在我们的案例中,此问题的解决方案不涉及“ISAPI和CGI限制”设置。操作人员将服务器意外升级到.NET 4.5后,错误开始出现,然后再次降级到.NET 4.0。这导致某些IIS网站忘记了各自正确的应用程序池,并导致某些应用程序池从.NET Framework 4.0切换到2.0。更改这些设置可以解决问题。
答案 7 :(得分:1)
如果您查看 ISAPI和CGI限制,并且所有内容都已设置为“允许”,并且安装的ASP.NET是 v4.0.30319 ,则在右侧,在“ 操作”面板上,单击“ 编辑功能设置... ”,然后选中两个框。就我而言,他们不是。
答案 8 :(得分:0)
尝试将App Pool Managed Pipeline Mode从“Integration”更改为“Classic”。
答案 9 :(得分:0)
根据应用程序的类型,要检查的另一件事是在应用程序池的高级设置下,确保“启用32位应用程序”设置为True。
当我遇到这个问题时,我已经检查了这个帖子中的所有内容但是所有内容都已经设置正确,我发现这对我来说是个问题。
答案 10 :(得分:0)
答案 11 :(得分:-1)
应用程序映射后,请按照以下步骤操作
打开IIS 单击“应用程序池” 双击网站 将管理模式更改为“经典” 单击“确定”。
将.Net Framework版本更改为降低版本
然后单击“确定”