【问题标题】:ASP.NET showing 404 for some .aspx files even though they existASP.NET 为某些 .aspx 文件显示 404,即使它们存在
【发布时间】:2010-12-27 07:26:44
【问题描述】:

我今天刚刚重新部署了一个网站,突然我的一些(但不是全部).aspx 文件重定向到我的 404 处理程序。

我仔细检查了有问题的文件的安全设置,将它们与其他正常服务的 .aspx 文件逐行进行比较,但没有成功。

文件 404'ing 文件确实是我一直在处理的文件,并在部署期间被替换。但话又说回来,我正在处理的其他一些文件都很好。当然,这些更改不会导致我看到的错误,并且该网站在我的开发环境中运行完美。

知道是什么原因造成的吗?

【问题讨论】:

  • 您的服务器是否设置为仅使用 ASPX 文件作为“标记文件”来分发无源编译网站?
  • 您能否更改错误文件的文件权限?
  • 不确定您所说的标记文件是什么意思,但是是的,该服务器上的任何地方都没有 .aspx.cs 文件(而且从来没有)
  • 我几天前更改了我的开发框底层目录的权限。我怀疑这些权限是否会在 RoboCopy 期间传播到另一台服务器,如果可能的话,我预计这会在更改设置后的第一次部署而不是第五次部署时发生。
  • 那你确实重新编译它并将编译后的文件上传到你的服务器?如果你打开一个“已编译”的 ASPX 文件,它会说“这个文件只是一个标记文件”或类似的东西。

标签: asp.net iis http-status-code-404


【解决方案1】:

回答:用户错误(一如既往)

看起来我的部署脚本正在跳过 .ascx 文件。 (上次部署和这次部署之间的细微变化之一是添加了几个用户控件。)页面将开始加载,查找它的用户控件,找不到它们,然后抛出 404。

感谢大家的同情。很抱歉浪费您的时间。希望这至少可以帮助下一个使用部署脚本并收到无用错误消息的人。

【讨论】:

    【解决方案2】:

    也许您已经这样做了,但正如您所说您最近一直在处理这些文件,我将首先验证指向违规页面的链接在源代码中是否正确 - 检查它们声明的路径是否(有效)出来)确实有效。我尝试使所有链接都与 Server.MapPath 或类似的东西相关,但有时我会忘记。

    【讨论】:

    • 谢谢。链接很好(并且在几周内没有改变),我通过手动输入 URL 进行了健全性检查。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多