子网站的IIS网站部署为子目录中的页面抛出404错误

时间:2008-12-23 21:34:26

标签: visual-studio-2008 deployment iis-6 http-status-code-404

在IIS 6中,我尝试从Visual Studio 2008部署Web站点项目。此站点有一个子文件夹,其中包含一些aspx页面。当我将项目部署到服务器并导航到站点时,除了子文件夹中存在的页面之外,一切都有效,它们会抛出404错误。

在IIS中,我可以浏览子文件夹并查看其中的页面,但是当我右键单击其中一个文件并选择“浏览”时,它也会抛出404。

仅供参考...当我从VS发布网站时,我会选中“允许此预编译网站可更新”的复选框。我试过取消选中该框,但它给了我相同的结果。

此外,在本地或在调试模式下运行不会产生此结果,我可以正常导航到子文件夹中的页面。

编辑:看起来更深,它在IIS日志中给出了404.2(404 2 1260)错误,这意味着Lockdown policy prevents this request。任何想法意味着什么以及如何解决它?

4 个答案:

答案 0 :(得分:7)

如果它是IIS不知道mime类型的文件扩展名,则可能导致404.

尝试查看IIS日志(网站属性 - >启用日志记录 - >浏览)以查找错误。 IIS应该将它们称为404.1或404.2或类似的东西,这将为您提供有关特定错误的更多信息。

编辑:这已经过时了,但是这个错误让我想知道你是否需要进入IIS管理 - > Web服务扩展(网站下的文件夹)和允许ASP.NET。在Win2003中默认为Disabled。

答案 1 :(得分:0)

检查子文件夹中的页面是否引用了您可能忘记与其他网站内容一起部署的页面或用户控件。

答案 2 :(得分:0)

检查IIS是否创建了目录的虚拟目录并将其删除。

答案 3 :(得分:-1)

尝试此操作:在服务器上打开IIS管理器,右键单击站点文件夹(而不是子文件夹),然后单击“属性”。在“虚拟目录”选项卡上的“应用程序设置”中,查找“创建”按钮。如果存在,请确保将权限设置设置为“仅脚本”,然后单击“创建”按钮。如果按钮显示“删除”,请尝试将权限更改为“脚本和可执行文件”。如果它不起作用,您可以随时更改它。