HTTP 404 Not Found

Web 上最著名的状态码:该地址不存在任何内容。

HTTP 404 是什么意思

HTTP 404 Not Found 表示服务器可以访问且正常运行,但请求的 URL 上不存在任何资源。它并不说明该页面是否曾经存在过、或将来是否可能再次存在——只是说明目前这里没有内容(有意进行的永久移除更适合用 410 Gone 表示)。

每个网站都会随着时间积累 404:页面被重命名、链接失效、用户输错 URL。真正重要的是妥善处理它们——为访客提供有用的 404 页面,为机器提供正确的状态码,并为真正迁移过的 URL 设置重定向。

404 错误的常见原因

  • 页面被删除,或其 URL 发生了变化但没有设置重定向。
  • 链接或地址栏中的拼写错误(失效的内部链接是最容易修复的情况)。
  • 大小写敏感:在大多数服务器上,/关于 和 /about 是不同的 URL。
  • 资源确实存在,但服务器的重写规则或路由未能匹配到它。
  • 一个曾经拥有可用 URL、如今已过期或未发布的 CMS 条目。

作为用户该如何修复

  • 检查 URL 中是否有拼写错误、多余字符,或复制粘贴时被截断的部分。
  • 前往网站首页或使用搜索功能,查找内容迁移到了哪里。
  • 如果内容已彻底消失,可以使用网页存档(例如 Wayback Machine)。

作为站点所有者该如何修复

  • 用 301 重定向将迁移的内容从旧 URL 指向其新的对应地址。
  • 修复失效的内部链接——抓取你自己的网站,并检查 Search Console 中的“未找到”报告。
  • 提供一个带有搜索功能和热门链接的实用自定义 404 页面,但保留 404 状态码。
  • 对你有意移除且永远不打算恢复的内容使用 410。

示例响应

HTTP/1.1 404 Not Found
Content-Type: text/html

<!doctype html>
<title>找不到页面</title>

SEO 影响

404 本身不会直接损害排名——每个网站都有 404。真正的损害来自失效的内部链接(丢失的抓取路径和链接权重),以及有价值的迁移页面缺少 301 重定向。切勿将所有 404 批量重定向到首页:Google 会将其视为软 404。

常见问题

404 错误会损害 SEO 吗?

本身不会。失效的内部链接和没有重定向的迁移页面才会。修复链接,为迁移的内容设置重定向,让真正失效的 URL 返回 404。

404 和 410 有什么区别?

404 表示“这里没有内容”而不作解释;410 表示“已被有意移除,不要再问了”。搜索引擎会稍快一些地从索引中移除 410 的 URL。

什么是软 404?

一个在用户看来像错误页面、实际却返回 200 的页面,或者将失效 URL 重定向到首页等不相关页面。Search Console 会标记这两种情况。