常见HTTP状态代码及其相应含义的列表
HTTP状态代码就像来自Web服务器的简短注释,它被添加到网页的顶部。它实际上不是网页的一部分。相反,它是来自服务器的消息,让您知道服务器收到查看页面的请求后会发生什么。
每次浏览器与服务器交互时都会返回这些类型的消息,即使您不常看到它们。如果你是网站所有者或开发者,知道HTTP状态码是必不可少的。HTTP状态码是诊断和修复网站配置错误的重要工具。
本文介绍了最常见的服务器状态和错误代码,并解释了它们的含义。
他们来自哪里?他们要去哪里?
每当你点击一个链接或键入一个网址并按下“回车”,浏览器就会向网络服务器发送一个请求。Web服务器接收并处理请求,然后将请求的资源和HTTP头一起发送回去。
HTTP状态代码将在HTTP标头中传递到您的浏览器。尽管浏览器每次请求网页或资源时都会返回一个状态码,但在大多数情况下你看不到它们。当出现问题时,您可能会在浏览器中看到HTTP状态代码。这是服务器的反馈,告诉你“出问题了。这是一个解析错误的代码。
谷歌404 HTTP状态码
如果您想检查浏览器通常不显示的状态代码,您可以使用许多不同的工具来检查它们。浏览器扩展适合开发者友好的浏览器,比如Chrome和Firefox,还有很多基于Web的标题提取工具,比如Web Sniffer。
要使用这些工具查看HTTP状态代码,请查看报告顶部附近出现的行“Status:HTTP/1.1”,后面是服务器返回的状态代码。
HTTP状态代码
HTTP状态代码列表分为5类:
00′ s:信息码,表示浏览器发起的请求正在继续。
00的:服务器成功接收、理解并处理浏览器请求时返回的成功代码。
300:当一个新的资源替换了被请求的资源时,重定向代码被返回。
00的:客户端错误代码,表示请求有问题。
50:服务器错误代码表示请求已被接受,但服务器上的错误阻止了请求的完成。
在每个类中,都存在不同的服务器代码,并且可以由服务器返回。每个单独的代码都有特定和独特的含义。
HTTP状态代码列表
有40多种不同的服务器状态代码。但是,实际上,你会遇到不到十几个。如果你是运营网站的,你要知道如何处理这些代码,了解HTTP状态码背后的含义,及时处理导致错误码的问题。检查以下HTTP状态代码列表:
200状态代码
20:“一切都好。”这是当网页或资源完全符合预期时传递的代码。
00状态代码
31:“请求的资源已被永久迁移。”当网页或资源被另一个资源永久替换时,此代码将被传递。它用于永久URL重定向。
32:“请求的资源已被临时移动。”此代码用于指示找到了请求的资源,而不是在预期的位置。它用于临时URL重定向。
34:“自上次访问以来,请求的资源未被修改。”这段代码告诉浏览器,存储在浏览器缓存中的资源没有改变。它通过重用先前下载的资源来加速网页的交付。
00状态代码
41:“未经授权。”当目标资源缺少有效的身份验证凭据时,服务器会返回此信息。
403:“禁止访问该资源。”当用户试图访问他们无权访问的内容时,将返回此代码。例如,试图在不登录的情况下查看受密码保护的内容可能会导致403错误。
44:“找不到请求的资源。”这些消息中最常见的错误消息。此代码表示请求的资源不存在,并且服务器不知道它是否存在。
45:“方法不允许。”当受管服务器(源服务器)支持接收的方法,但目标资源不支持时,会生成此消息。
46:“不可接受的回应。”被请求的资源只能根据请求中发送的accept标头生成不可接受的内容。
48:“请求超时。”当服务器在等待来自浏览器的完整请求时超时生成的代码。换句话说,服务器没有得到浏览器发送的完整请求。一个可能的原因是网络拥塞导致浏览器和服务器之间的数据包丢失。
410:“请求的资源不可用,不会被返回。”类似于404“未找到”代码,除了410表示该情况是预期的并且是永久性的。
429:“请求太多。” 当用户在给定时间内发送了太多请求(速率限制)时由服务器生成。这有时可能来自尝试访问您网站的bots或脚本。
请求太多导致的429错误码49:“要求太多了。”当用户在给定时间内发送过多请求(速率限制)时,由服务器生成。有时这可能来自试图访问您网站的机器人或脚本。
429请求过多导致的错误代码
499:”客户端关闭请求。”当客户端在NGINX仍在处理请求时关闭请求,NGINX将返回这个请求。
500个状态代码
500:“服务器上出现错误,无法完成请求。”一般代码仅表示“服务器内部错误”。服务器上出现问题,并且未提供所请求的资源。此代码通常由第三方插件,错误的PHP或甚至与数据库断开的连接导致。稍后我们将会写文章,说明如何修复WordPress数据库连接错误以及服务器内部500错误。
建立数据库连接时出错50:“服务器出现错误,请求无法完成。”一般代码仅表示“服务器内部错误”。服务器有问题,请求的资源没有提供。这种代码通常是由第三方插件、错误的PHP甚至是数据库断开造成的。稍后,我们将写一篇文章,解释如何修复服务器内部的WordPress数据库连接错误和500错误。建立数据库连接时出错。
501:“服务器没有完成请求的功能。”此错误表明服务器不支持完成请求所需的功能。一般这是Web服务器本身的问题,通常必须由主机来解决。后面我们还会写文章解释如何解决服务器导致的501错误。
502:“错误的网关。”此错误代码通常表示一台服务器收到了另一台服务器的无效响应。有时查询或请求会花费太长时间,所以它被服务器取消或终止,并且与数据库的连接被中断。
53:“服务器现在无法处理此请求。”现在无法完成请求。过载的服务器可能会返回此代码,因为它无法处理其他请求。查看我们关于如何修复503服务不可用错误的教程。
54:“充当网关的服务器超时,正在等待另一个服务器响应。”当处理请求涉及两个服务器时,代码返回,第一个服务器等待第二个服务器响应。
了解有关HTTP状态代码的更多信息
上面的列表解释了您可能经常遇到的大多数HTTP状态代码。但是,您可能会不时遇到更不常见的其他HTTP状态代码。您可以通过以下链接了解有关罕见HTTP状态代码的更多信息:
维基百科中HTTP状态代码的完整列表
互联网工程任务组(IETF)的状态代码定义。
RFC 7231