无法在IIS上设置我的ASP.NET 3.5网站

时间:2010-02-08 14:46:20

标签: asp.net iis iis-6

我一生中创建了几个IIS网站,但是几天前我的一个朋友要我托管他的网站,所以我在inetpub / wwwroot中创建了一个文件夹来存储它。

然后,我在我的默认网站中创建了一个虚拟目录(该文件夹出现在wwwroot上),并创建了应用程序,并允许脚本&可执行文件权限。此外,我已经设置了网站将具有的正确文档类型(default.aspx,asp等),该文件夹具有我通常授予的所有权限:iusr,iwmp,asp.net,network等。

当我重置IIS服务然后查看网站时(我也添加了标题)我收到以下错误:

  

您试图执行CGI,   ISAPI或其他可执行程序   从一个不允许的目录   要执行的程序。

我一直在互联网上寻找一段时间,我发现的唯一一件事是允许可执行文件进入我的网站,我已经完成了。

但是,当我删除了asp.net页面并且我只添加了一个html文件时,它将显示在浏览器上。

有没有人对此有任何线索?

5 个答案:

答案 0 :(得分:1)

进入IIS管理器下的Web Server Extensions文件夹,确保您已允许运行asp.net 2.0应用程序

答案 1 :(得分:1)

您的IUSR帐户需要您创建的目录的读/写权限。

答案 2 :(得分:0)

您获得的错误肯定意味着您的脚本执行权限不正确。在IIS管理器中,返回到相关文件夹并仔细检查相关文件夹/虚拟目录的“目录”选项卡上的设置。

你也应该尝试使用经典的ASP脚本(文件中只有<% Response.Write "Hello" %>)来确保,但我确信结果是一样的。

如果仍有问题,请打开IIS元数据库(在C:\WINDOWS\system32\inetsrv\metabase.xml中)并找到相关文件夹。要执行此操作,请搜索(假设您将网站置于默认网站下)以下字符串:

  

Location ="/LM/W3SVC/1/ROOT"

这应找到默认网站根目录的IIsWebVirtualDir。它看起来像这样:

<IIsWebVirtualDir Location ="/LM/W3SVC/1/ROOT"`
  AccessFlags="AccessRead | AccessScript"
  AppFriendlyName="Default Application"
     ...other attributes...
  >
</IIsWebVirtualDir>

向下滚动一下,直到找到与您将朋友网站放入的文件夹相匹配的位置路径,例如。

  

Location ="/LM/W3SVC/1/ROOT/JoesSite"

如果您发现了这一点,请查看AccessFlags属性,它应该如下所示:

  

AccessFlags="AccessRead | AccessScript"

告诉我们您在该元数据库节点上看到的内容。

答案 3 :(得分:-1)

嗯,因为它是一个网站,而不是一个Web应用程序,它似乎不能用作虚拟目录,但它确实是一个IIS网站。

谢谢。

布赖恩

答案 4 :(得分:-1)

打开iis。然后在左窗格中选择应用程序池。在池中选择指定的站点。单击并打开高级设置,然后根据需要更改.NET版本