blob: 759fcd11c12cd9e665b3d23a9719094432f3128b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
---
title: 404 Not Found
slug: Web/HTTP/Status/404
tags:
- 客户端错误
translation_of: Web/HTTP/Status/404
---
<div>{{HTTPSidebar}}</div>
<p>状态码 <code><strong>404</strong></code><strong><code> Not Found</code></strong> 代表客户端错误,指的是服务器端无法找到所请求的资源。返回该响应的链接通常称为坏链(broken link)或死链(dead link),它们会导向链接出错处理(<a href="https://en.wikipedia.org/wiki/Link_rot">link rot</a>)页面。</p>
<p>404 状态码并不能说明请求的资源是临时还是永久丢失。如果服务器知道该资源是永久丢失,那么应该返回 {{HTTPStatus(410)}} (Gone) 而不是 404 。</p>
<h2 id="状态">状态</h2>
<pre class="syntaxbox notranslate">404 Not Found</pre>
<h2 id="自定义错误页面">自定义错误页面</h2>
<p>许多网站会将 404 页面的外观进行定制,使其对用户更友好,以及提供一些引导。例如,Apache 服务器可以在 <code>.htaccess</code> 文件中进行配置,代码片段如下:</p>
<pre class="brush: bash notranslate">ErrorDocument 404 /notfound.html</pre>
<p>你可以访问一下 <a href="https://developer.mozilla.org/en-US/404">MDN 的 404 页面</a>获取一些启发。</p>
<div class="note">
<p>自定义的404页面应该是对用户友好且可读性高的,不能使用户产生困惑。</p>
</div>
<h2 id="规范">规范</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">Specification</th>
<th scope="col">Title</th>
</tr>
<tr>
<td>{{RFC("7231", "404 Not Found" , "6.5.4")}}</td>
<td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td>
</tr>
</tbody>
</table>
<h2 id="浏览器兼容性">浏览器兼容性</h2>
<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p>
<p>{{Compat("http.status.404")}}</p>
<h2 id="相关内容">相关内容</h2>
<ul>
<li>{{HTTPStatus(410)}}</li>
<li>
<p>{{interwiki("wikipedia", "HTTP_404", "Wikipedia: HTTP 404")}}</p>
</li>
<li>
<p><a href="https://www.exai.com/blog/404-http-error">404 error</a></p>
</li>
</ul>
|