HTTP服务器的响应码有哪些?HTTP错误代码大全
响应码由三位十进制数字组成,它们出现在由HTTP服务器发送的响应的第一行。
响应码分五种类型,由它们的第一位数字表示:
1、1xx:信息,请求收到,继续处理
2、2xx:成功,行为被成功地接受、理解和采纳
3、3xx:重定向,为了完成请求,必须进一步执行的动作
4、4xx:客户端错误,请求包含语法错误或者请求无法实现
5、5xx:服务器错误,服务器不能实现一种明显无效的请求
所有 HTTP 状态代码及其定义。
代码 指示
2xx 成功
200 正常;请求已完成。
201 正常;紧接 POST 命令。
202 正常;已接受用于处理,但处理尚未完成。
203 正常;部分信息 — 返回的信息只是一部分。
204 正常;无响应 — 已接收请求,但不存在要回送的信息。
3xx 重定向
301 已移动 — 请求的数据具有新的位置且更改是永久的。
302 已找到 — 请求的数据临时具有不同 URI。
303 请参阅其它 — 可在另一 URI 下找到对请求的响应,且应使用 GET 方法检索此响应。
304 未修改 — 未按预期修改文档。
305 使用代理 — 必须通过位置字段中提供的代理来访问请求的资源。
306 未使用 — 不再使用;保留此代码以便将来使用。
4xx 客户机中出现的错误
400 错误请求 — 请求中有语法问题,或不能满足请求。
401 未授权 — 未授权客户机访问数据。
402 需要付款 — 表示计费系统已有效。
403 禁止 — 即使有授权也不需要访问。
404 找不到 — 服务器找不到给定的资源;文档不存在。
407 代理认证请求 — 客户机首先必须使用代理认证自身。
415 介质类型不受支持 — 服务器拒绝服务请求,因为不支持请求实体的格式。
5xx 服务器中出现的错误
500 内部错误 — 因为意外情况,服务器不能完成请求。
501 未执行 — 服务器不支持请求的工具。
502 错误网关 — 服务器接收到来自上游服务器的无效响应。
503 无法获得服务 — 由于临时过载或维护,服务器无法处理请求。
HTTP 401.1 - 未授权:登录失败
HTTP 401.2 - 未授权:服务器配置问题导致登录失败
HTTP 401.3 - ACL 禁止访问资源
HTTP 401.4 - 未授权:授权被筛选器拒绝
HTTP 401.5 - 未授权:ISAPI 或 CGI 授权失败
HTTP 403.1 禁止访问:禁止可执行访问
HTTP 403.2 - 禁止访问:禁止读访问
HTTP 403.3 - 禁止访问:禁止写访问
HTTP 403.4 - 禁止访问:要求 SSL
HTTP 403.5 - 禁止访问:要求 SSL 128
HTTP 403.6 - 禁止访问:IP 地址被拒绝
HTTP 403.7 - 禁止访问:要求客户证书
HTTP 403.8 - 禁止访问:禁止站点访问
HTTP 403.9 - 禁止访问:连接的用户过多
HTTP 403.10 - 禁止访问:配置无效
HTTP 403.11 - 禁止访问:密码更改
HTTP 403.12 - 禁止访问:映射器拒绝访问
HTTP 403.13 - 禁止访问:客户证书已被吊销
HTTP 403.15 - 禁止访问:客户访问许可过多
HTTP 403.16 - 禁止访问:客户证书不可信或者无效
HTTP 403.17 - 禁止访问:客户证书已经到期或者尚未生效
HTTP 404.1 - 无法找到 Web 站点
HTTP 405 - 资源被禁止
HTTP 406 - 无法接受
HTTP 410 - 永远不可用
HTTP 412 - 先决条件失败
HTTP 414 - 请求 - URI 太长
HTTP 500.100 - 内部服务器错误 - ASP 错误
HTTP 500-11 服务器关闭
HTTP 500-12 应用程序重新启动
HTTP 500-13 - 服务器太忙
HTTP 500-14 - 应用程序无效
HTTP 500-15 - 不允许请求 global.asa
Error 501 - 未实现
HTTP 502 - 网关错误
报错情况比较复杂,以下列出比较常见的几种报错内容。
· 403 报错
403报错是一个大类,403的报错基本上是权限问题,出现403报错时您需要检测权限配置问题。以下是关于403报错中具体报错的介绍。
· 403.1错误是由于执行访问被禁止而造成的。若试图从目录中执行CGI、ISAPI或其他可执行程序,但该目录不允许执行程序时便会出现此种错误。
· 403.2错误是由于读取访问被禁止而造成的。导致此错误是由于没有可用的默认网页并且没有对目录启用目录浏览,或者要显示的HTML网页所驻留的目录仅标记为“可执行”或“脚本”权限。
· 403.3错误是由于写入访问被禁止而造成的。当试图将文件上载到目录或在目录中修改文件,但该目录不允许“写”访问时就会出现此种错误。
· 403.4错误是由于要求SSL而造成的。您必须在要查看的网页的地址中使用HTTPS。
· 403.5错误是由于要求使用128位加密算法的Web浏览器而造成的。如果您的浏览器不支持128位加密算法就会出现这个错误,您可以连接微软网站进行浏览器升级。
· 403.6错误是由于IP地址被拒绝而造成的。如果服务器中有不能访问该站点的IP地址列表,并且您使用的IP地址在该列表中时您就会返回这条错误信息。
· 403.7错误是因为要求客户证书。当需要访问的资源要求浏览器拥有服务器能够识别的安全套接字层(SSL)客户证书时会返回此种错误。
· 403.8错误是由于禁止站点访问而造成的。若服务器中有不能访问该站点的DNS名称列表,而您使用的DNS名称在列表中时就会返回此种信息。请注意区别403.6与403.8错误。
· 403.9错误是由于连接的用户过多而造成的,由于Web服务器很忙,因通讯量过多而无法处理请求时便会返回这条错误。
· 403.10错误是由于无效配置而导致的错误。当试图从目录中执行CGI、ISAPI或其他可执行程序,但该目录不允许执行程序时便会返回这条错误。
· 403.11错误是由于密码更改而导致无权查看页面。
· 403.12错误是由于映射器拒绝访问而造成的。若要查看的网页要求使用有效的客户证书,而客户证书映射没有权限访问该Web站点时就会返回映射器拒绝访问的错误。
· 403.13错误是由于需要查看的网页要求使用有效的客户证书而使用的客户证书已经被吊销,或者无法确定证书是否已吊销造成的。
· 403.14错误Web服务器被配置为不列出此目录的内容,拒绝目录列表。
· 403.15错误是由于客户访问许可过多而造成的。当服务器超出其客户访问许可限制时会返回此条错误。
· 403.16错误是由于客户证书不可信或者无效而造成的。
· 403.17错误是由于客户证书已经到期或者尚未生效而造成的。
· 404 报错
404报错主要是页面显示问题或者页面的链接有问题,意味着链接指向的网页不存在,即原始网页的URL失效。当 Web服务器接到类似请求时,会返回一个404状态码,告诉浏览器已请求的资源并不存在。导致这个错误的原因一般有以下几种情况。
· 无法在所请求的端口上访问Web站点。
· Web服务扩展锁定策略阻止本请求。
· MIME映射策略阻止本请求。
· 网站更新改版,但某些局部板块沿用原来的模块,而原有的模块调用的文件已经被删除或转移了路径。
· 跟踪访问的各类脚码或CSS文件无效但调用代码依然存在。
· 某个目录被直接删除(导致一段时间该目录的文件在被爬行时全部报“404 Not Found”错误)。
· 网页URL生成规则改变、网页文件更名或移动位置、导入链接拼写错误等,导致原来的URL地址无法访问。
· 502 报错
当测试访问报错为502 Bad Gateway,这是Web程序配置异常导致的。建议结合Web访问日志,检测一下Web程序配置的参数设置是否有异常。
· 503 报错
503报错是一种HTTP状态码,与404同属一种网页状态出错码。两者的区别是:前者是服务器出错的一种返回状态,后者是网页程序没有相关结果后返回的一种状态。503报错产生的原因有可能是以下几种情况。
· 网络管理员可能关闭应用程序池以执行维护。
· 当请求到达时应用程序池队列已满。
· 应用程序池标识没有使用预定义账户:网络服务。而自己配置了标识,但是配置的这个用户不属于IIS_WPG组。
· 应用程序池启用了CPU监视,并且设置了CPU使用率超过一定百分比关闭应用程序池,而开发人员写的服务端页面 (.asp、.aspx)执行效率不高,会引起CPU的长时间占用,最终达到设置的百分比,从而引起应用程序池关闭。
· 应用程序池的性能选项卡的请求队列限制所填的数值太小,默认为1000。
· 某个目录直接删除(导致一段时间该目录的文件在被爬行时全部报404 Not Found错误)。
· 网页URL生成规则改变、网页文件更名或移动位置、导入链接拼写错误等,导致原来的URL地址无法访问。
· 该站点正在被攻击。对于最新型的攻击,其实是DDoS的一种派生,原理在于找数千个IP,同时向服务器的Apache发出请求,然后立即断开,让Apache处于等待状态,致使Apache线程全部被填满,致使服务器死机。因此,为了保证大多数客户的利益,我们给每个空间,作出了每19秒64个PHP请求的限制。一般的图片请求和HTML请求不包括在内。
该程序占用的PHP线程过多,有的程序没有进行好优化处理,一个点击即可产生数个,甚至数十个PHP线程。这样的话,几个点击就可以把该时段的64个PHP线程全部填满了。因此出现503错误。建议优化一下程序,尽量少用require(请求)等语句。