IIS HTTP错误403.1 - 禁止访问:拒绝执行访问

时间:2010-06-01 02:18:18

标签: asp.net iis

我在IIS 6 / Windows Server 2003上运行了一个ASP.NET 1.1应用程序。 这是我们的应用程序,但我们正在尝试专门复制客户的安装,因此app文件夹已完全从其生产服务器复制到我们的测试机器上,然后我们手动创建了IIS的虚拟目录和Web应用程序。 p>

Internet信息服务(IIS)管理器:

  • 应用程序池
  • 网站
    • 默认网站
      • xxxxx(虚拟目录)
        • yyyyy(网络应用程序)
  • 网络服务扩展

我遇到的问题是,当我们访问应用程序时,会收到标准的IIS安全错误消息:

The page cannot be displayed
You have attempted to execute a CGI, ISAPI, or other executable program from a directory that does not allow programs to be executed. 
--------------------------------------------------------------------------------

Please try the following:

•Contact the Web site administrator if you believe this directory should allow execute access.
HTTP Error 403.1 - Forbidden: Execute access is denied.
Internet Information Services (IIS)

现在这是非常标准的,除非我能看到这么简单。

我查了一下:

  • IIS用户具有对目录的读取权限
  • IIS用户和网络服务用户具有对Temporary ASP.NET Files文件夹的读/写访问权限
  • 虚拟目录设置为正确的ASP.NET版本
  • 允许ASP.NET 1.1 Web服务扩展
  • 虚拟目录具有正确的文件扩展名映射和aspnet 1.1 DLL的所有谓词
  • 虚拟目录属性允许运行脚本和可执行文件
  • 已启用匿名访问且用户名和密码正确

我错过了什么?

2 个答案:

答案 0 :(得分:13)

当您在IIS上创建应用程序时,是否检查了允许脚本执行?您需要打开两个第一选择才能执行此应用程序中的任何内容,包括您创建的虚拟目录。

右键单击父应用程序>主页目录标签>执行权限仅设置为脚本...

答案 1 :(得分:3)

您可能还需要检查特定应用程序的Handler Mappings设置右窗格中的“编辑功能权限...”按钮,并启用“执行”。这就是让我的同事和我在3小时内完成同样症状的原因。