Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 在iis 7.0上运行.net framework 4.0网站时出现问题_Asp.net_Iis 7_.net 4.0_Cgi_Isapi - Fatal编程技术网

Asp.net 在iis 7.0上运行.net framework 4.0网站时出现问题

Asp.net 在iis 7.0上运行.net framework 4.0网站时出现问题,asp.net,iis-7,.net-4.0,cgi,isapi,Asp.net,Iis 7,.net 4.0,Cgi,Isapi,嘿,我在IIS7.0上运行.netframework4.0网站时遇到问题。 我得到的错误如下: HTTP错误404.2-未找到“由于Web服务器上的ISAPI和CGI限制列表设置,无法提供您请求的页面” 转到IIS管理器并单击服务器名称。然后单击IIS标题下的“ISAPI和CGI限制”图标。将ASP.NET 4.0从“不允许”更改为“允许”。尝试将AppPool管理管道模式从“集成”更改为“经典”。映射应用程序后,请执行以下步骤 开放IIS 单击应用程序池 双击网站 将管理管道模式更改为“经典”

嘿,我在
IIS7.0
上运行
.netframework4.0
网站时遇到问题。 我得到的错误如下:

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


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

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

映射应用程序后,请执行以下步骤

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

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


然后单击Ok(确定)

如果您查看了ISAPI和CGI限制,并且所有内容都已设置为允许,然后确保ASP.NET v4.0.30319处理程序在列表中为偶数。就我而言,他们不是。这很容易被忽视


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

选中“允许执行扩展路径”

  • 转到IIS管理器
  • 打开服务器名称,如
    (PC名称)\
  • 然后双击ISAPI和CGI限制
  • 然后选择允许的ASP.NET v4.0.30319(32位)限制

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

  • 正如其他人所指出的,转到IIS管理器并单击服务器名称。然后单击IIS标题下的“ISAPI和CGI限制”图标

  • 如果一切都允许,它仍然不起作用。您需要单击操作(右侧)中的“编辑功能设置”,并分别选中“允许未指定的CGI模块”或“允许未指定的ISAPI模块”

  • 单击“确定”


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

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

    1.进入开始>所有程序>管理工具>服务。 2.在服务列表中,右键单击万维网发布服务,然后单击停止(停止服务)、启动(停止后启动服务)或重新启动(在服务运行时重新启动服务)


    Pramesh

    在我的例子中,问题更严重:原来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
    

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

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

    出现此问题时,我已检查了此线程中的所有内容,但所有内容都已正确设置,我发现这是我的问题。

    如果您没有列出ISAPI和CGI限制选项,下面是如何添加它。

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

    强调:点击服务器名而不是站点名来查找选项实际上,我甚至没有CGI选项。我使用的是64位Windows7。正在尝试使ssrs正常工作。你为我节省了时间:)谢谢:)请确保以管理员身份启动IIS:)至少今天,你是我最喜欢的人。这解决了一个我已经追问了几个小时的问题。回答得很好。我绞尽脑汁了几天,为了让公司的单一登录插件在经典模式下工作,我不得不做这个“编辑功能设置”
    %windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i