系统管理员如何排查在运行 IIS 的服务器上出现 HTTP 错误 404 找不到文件的错误消息

本文有助于你解决在运行 Internet Information Services (IIS) 的服务器上出现 HTTP 错误 404 找不到文件的问题。

注意

本文面向网站管理员。 遇到这些错误的最终用户应将问题通知网站管理员。

原始产品版本: Internet 信息服务
原始 KB 编号: 248033

症状

请求网页时,会在 Web 浏览器顶部收到以下错误消息:

找不到页面
要查找的页面可能已被删除、名称已更改或暂时不可用。

在网页上会收到以下错误消息:

HTTP 404 - 找不到文件
Internet Information Services

原因

检索请求的页面时,Web 服务器返回 HTTP 404 - 找不到文件的错误消息。

以下是此错误消息的一些常见原因:

  • 请求的文件已被重命名。
  • 请求的文件已移动到另一个位置和/或已删除。
  • 由于维护、升级或其他未知原因,请求的文件暂时不可用。
  • 请求的文件不存在。
  • IIS 6.0:未启用适当的 Web 服务扩展或 MIME 类型。
  • 虚拟目录映射到另一台服务器上驱动器的根目录。

解决方案

若要解决此问题,请验证在浏览器的 URL 中请求的文件是否位于 IIS 计算机上,并且位置正确。

使用 IIS Microsoft 管理控制台 (MMC) 管理单元来确定请求的文件必须位于 IIS 计算机文件系统中的位置。

如果网站使用虚拟目录 (VDIR),这一点非常重要。 VDIR 是一个不包含在网站的主目录中的目录,但在客户端浏览器中看起来就像包含在主目录中一样。 必须将此虚拟目录映射到驱动器上的子文件夹或按名称引用文件。

例如,假定导致 404 错误的 URL 是 http://Microsoft.Com/Test/File1.htm,IIS 管理单元显示,对于 Microsoft.Com 网站,/Test/ 目录实际上是映射到 IIS 计算机上 c:\Information 位置的虚拟目录。 这意味着必须验证 File1.htm 文件是否位于 c:\Information 目录中(并且文件名拼写正确)。

IIS 动态内容:未启用 Web 扩展时,将记录 W3C 扩展日志文件中的 404.2 条目。 使用 IIS Microsoft 管理控制台 (MMC) 管理单元来启用相应的 Web 扩展。 默认 Web 扩展包括:ASP、ASP.NET、Server-Side Include、WebDAV 发布、FrontPage Server Extensions、通用网关接口 (CGI)。 必须添加并显式启用自定义扩展。 有关详细信息,请参阅“IIS 帮助文件”。

IIS 静态内容:当扩展未映射到 MIME 映射属性中的已知扩展时,将记录 W3C 扩展日志文件中的 404.3 条目。 使用 IIS Microsoft 管理控制台 (MMC) 管理单元在 MIME 映射中配置适当的扩展。 有关详细信息,请参阅“IIS 帮助文件”。

有关此错误消息的其他非常见原因的详细信息,请参阅 IIS 隐藏的静态文件返回 HTTP 404 或访问拒绝错误

更多信息