HTTP协议状态码
如果向您的服务器发出了某项请求要求显示您网站上的某个网页(例如,当用户通过浏览器访问您的网页或在检测工具抓取该网页时),那么,您的服务器会返回 HTTP 状态代码以响应该请求。
一些常见的状态代码为:
· 200 – 服务器成功返回网页
· 404 – 请求的网页不存在
· 503 – 服务器暂时不可用
以下提供了 HTTP 状态代码的完整列表。
1xx(临时响应)
用于表示临时响应并需要请求者执行操作才能继续的状态代码。
代码 | 说明 |
100(继续) | 请求者应继续进行请求。服务器返回此代码以表示,服务器已收到某项请求的第一部分,正等待接收剩余部分。 |
101(切换协议) | 请求者已要求服务器切换协议,服务器已确认并准备进行切换。 |
2xx(成功)
用于表示服务器已成功处理相应请求的状态代码。
代码 | 说明 |
200(成功) | 服务器成功处理了相应请求。通常,这表示服务器已提供了请求的网页。如果您的 robots.txt 文件显示为此状态,则表示 检测工具 已成功检索到该文件。 |
201(已创建) | 请求成功且服务器已创建了新的资源。 |
202(已接受) | 服务器已接受相应请求,但尚未对其进行处理。 |
203(非授权信息) | 服务器已成功处理相应请求,但返回了可能来自另一来源的信息。 |
204(无内容) | 服务器已成功处理相应请求,但未返回任何内容。 |
205(重置内容) | 服务器已成功处理相应请求,但未返回任何内容。与 204 响应不同,此响应要求请求者重置文档视图(例如清除表单内容以输入新内容)。 |
206(部分内容) | 服务器成功处理了部分 GET 请求。 |
3xx(已重定向)
您需要进一步操作才能完成请求。此类状态代码通常可用于重定向。 建议您针对每一请求使用重定向的次数少于五次。您可以使用网站站长工具确定 检测工具 是否会在抓取重定向网页时遇到问题。抓取下的抓取错误页列出了由于重定向错误而导致 检测工具 无法抓取的网址。
代码 | 说明 |
300(多种选择) | 服务器可以根据请求来执行多项操作,例如:按照请求者(用户代理)的要求来选择某项操作或者展示列表以便请求者选择其中某项操作。 |
301(永久移动) | 请求的网页已永久移动到新位置。服务器返回此响应(作为对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。您应使用此代码通知 检测工具 某个网页或网站已被永久移动到新位置。 |
302(临时移动) | 服务器目前正从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。此代码与响应 GET 和 HEAD 请求的 301 代码类似,会自动将请求者转到不同的位置。但由于 检测工具 会继续抓取原有位置并将其编入索引,因此您不应使用此代码来通知 检测工具 某个页面或网站已被移动。 |
303(查看其他位置) | 当请求者应对不同的位置进行单独的 GET 请求以检索响应时,服务器会返回此代码。对于除 HEAD 请求之外的所有请求,服务器会自动转到其他位置。 |
304(未修改) | 请求的网页自上次请求后再也没有修改过。当服务器返回此响应时,不会返回相关网页的内容。
如果网页自请求者上次请求后再也没有更改过,您应当将服务器配置为返回此响应(称为 If-Modified-Since HTTP 标头)。服务器可以告诉 检测工具 自从上次抓取后网页没有变更,进而节省带宽和开销。 |
305(使用代理) | 请求者只能使用代理访问请求的网页。如果服务器返回此响应,那么,服务器还会指明请求者应当使用的代理。 |
307(临时重定向) | 服务器目前正从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。此代码与响应 GET 和 HEAD 请求的 301 代码类似,会自动将请求者转到不同的位置。但由于 检测工具 会继续抓取原有位置并将其编入索引,因此您不应使用此代码来通知 检测工具 某个页面或网站已被移动。 |
4xx(请求错误)
此类状态代码表示,相应请求可能出错,已阻止了服务器对请求的处理。
代码 | 说明 |
400(错误请求) | 服务器不理解相应请求的语法。 |
401(未授权) | 请求要求进行身份验证。登录后,服务器可能会返回对页面的此响应。 |
403(已禁止) | 服务器正在拒绝相应请求。如果 检测工具 在尝试抓取网站的有效网页时收到此状态代码(您可在 网站站长工具中运行工具下的抓取错误页上进行查看),则可能是因为您的服务器或主机正在阻止 检测工具 进行访问。 |
404(未找到) | 服务器找不到请求的网页。例如,如果相应请求是针对服务器上不存在的网页进行的,那么服务器通常会返回此代码。
如果您的网站上没有 robots.txt 文件,而您在 网站站长工具中的已拦截的网址页上看到此状态,那么这就是正确的状态。然而,如果您有 robots.txt 文件而又发现了此状态,那么,这说明您的 robots.txt 文件可能是命名错误或位于错误的位置。(该文件应当位于顶级域名上,且应当名为 robots.txt)。 如果您在 检测工具 尝试抓取的网址上看到此状态,那么这表示 检测工具 追踪的可能是另一网页中的无效链接(旧链接或输入有误的链接)。 |
405(方法禁用) | 禁用相应请求中所指定的方法。 |
406(不接受) | 无法使用相应请求的内容特性来响应请求的网页。 |
407(需要代理授权) | 此状态代码与 401(未授权)类似,但却指定了请求者应当使用代理进行授权。如果服务器返回此响应,那么,服务器还会指明请求者应当使用的代理。 |
408(请求超时) | 服务器在等待请求时超时。 |
409(冲突) | 服务器在完成请求时遇到冲突。服务器必须在响应中包含该冲突的相关信息。服务器在响应与前一个请求相冲突的 PUT 请求时可能会返回此代码,同时会提供两个请求的差异列表。 |
410(已删除) | 如果请求的资源已被永久删除,那么服务器会返回此响应。该代码与 404(未找到)代码类似,但在资源以前有但现在已经不复存在的情况下,有时会替代 404 代码出现。如果资源已永久删除,您应使用 301 指定资源的新位置。 |
411(需要有效长度) | 服务器不会接受包含无效内容长度标头字段的请求。 |
412(未满足前提条件) | 服务器未满足请求者在请求中设置的其中一个前提条件。 |
413(请求实体过大) | 服务器无法处理相应请求,因为请求实体过大,已超出服务器的处理能力。 |
414(请求的 URI 过长) | 请求的 URI(通常为网址)过长,服务器无法进行处理。 |
415(不支持的媒体类型) | 相应请求的格式不受请求页面的支持。 |
416(请求范围不符合要求) | 如果相应请求是针对网页的无效范围进行的,那么服务器会返回此状态代码。 |
417(未满足期望值) | 服务器未满足“期望”请求标头字段的要求。 |
5xx(服务器错误)
此类状态代码表示,服务器在尝试处理相应请求时发生内部错误。此类错误往往与服务器本身有关(与请求无关)。
代码 | 说明 |
500(服务器内部错误) | 服务器遇到错误,无法完成相应请求。 |
501(尚未实施) | 服务器不具备完成相应请求的功能。例如,当服务器无法识别请求方法时,可能便会返回此代码。 |
502(错误网关) | 服务器作为网关或代理,从上游服务器收到了无效的响应。 |
503(服务不可用) | 目前无法使用服务器(由于超载或进行停机维护)。通常,这只是暂时状态。 |
504(网关超时) | 服务器作为网关或代理,未及时从上游服务器接收请求。 |
505(HTTP 版本不受支持) | 服务器不支持相应请求中所用的 HTTP 协议版本。 |
HTTP协议状态码的更多相关文章
- HTTP协议状态码的含义
HTTP协议状态码的含义 号码含义-----------------------------------------"100":Continue"101":wi ...
- http协议状态码解析
关键词 HTTP协议 状态码 摘要 本文列出了HTTP协议的所有的状态码,并对每个状态码的含义作了深入的解释,以便大家参考. 本文列出了HTTP协议的所有的状态码,并对每个状态码的含义作了深入的解 ...
- HTTP协议状态码详解(HTTP Status Code)(转)
原文链接:HTTP协议状态码详解(HTTP Status Code) 使用ASP.NET/PHP/JSP 或者javascript都会用到http的不同状态,一些常见的状态码为: 200 – 服务器成 ...
- HTTP 协议 -- 状态码
HTTP 协议状态码(Http Status Code) 使用ASP.NET/PHP/JSP 或者javascript都会用到http的不同状态,一些常见的状态码为: 200 – 服务器成功返回网页 ...
- 常见Http协议状态码
收集常见的http协议状态码,供查阅!包括中文和英文对照. 中文版 1**:请求收到,继续处理 2**:操作成功收到,分析.接受 3**:完成此请求必须进一步处理 4**:请求包含一个错误语法或不能完 ...
- HTTP协议状态码详解(HTTP Status Code)
转自:http://www.cnblogs.com/shanyou/archive/2012/05/06/2486134.html 使用ASP.NET/PHP/JSP 或者javascript都会用到 ...
- HTTP协议状态码详解
HTTP状态码,我都是现查现用. 我以前记得几个常用的状态码,比如200,302,304,404, 503. 一般来说我也只需要了解这些常用的状态码就可以了. 如果是做AJAX,REST,网络爬虫, ...
- [转载] HTTP协议状态码详解(HTTP Status Code)
转载自:http://www.cnblogs.com/shanyou/archive/2012/05/06/2486134.html 使用ASP.NET/PHP/JSP 或者javascript都会用 ...
- Http协议状态码总结
一.http方法 方法名 说明 get 发送一个获取请求,服务器的响应会包含head与body部分 post 发送一个输入数据的请求,服务器的响应会包含head与body部分 head 服务器响应的只 ...
- http协议状态码及其意义
什么是状态码? 状态码的作用是:服务器告诉客户端,发生了什么事. 在http协议中状态码出现在http response 的第一行.它会返回一个三位数的状态码和状态信息.状态码为了便于程序进行处理,而 ...
随机推荐
- 使用innerHTML获取HTML代码时,HTML标记属性的双引号好多都消失不见了,原来是属性值中包含空格才会保留双引号
最近搞的一个项目中所使用的方式比较奇怪,用Label显示HTML内容,然后不断地使用JS把Label的innerHTML复制到TextBox中. 但是,昨天发现了一个问题,获取元素值的时候,有时候正常 ...
- WebApi传参总动员(五)
上回说到涉及多个实体的传参,用常规的方法已经不能解决了.这回我们用终极大招搞定她. WebApi:注意要引用JSON.Net [HttpPost] public string GetData(stri ...
- Android入门:Activity四种启动模式
一.启动模式介绍 启动模式简单地说就是Activity启动时的策略,在AndroidManifest.xml中的标签的android:launchMode属性设置: 启动模式有4种,分别为standa ...
- 重新想象 Windows 8 Store Apps (64) - 后台任务: 开发一个简单的后台任务
[源码下载] 重新想象 Windows 8 Store Apps (64) - 后台任务: 开发一个简单的后台任务 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 后 ...
- PHP KMP算法实现
function getNext( $str ){ $ret = array(0=>0); for( $j =1; $j < strlen($str); $j++ ){ $_s = sub ...
- Jsoup实现java模拟登陆
Jsoup实现java模拟登陆 2013-10-29 14:52:05| 分类: web开发|举报|字号 订阅 下载LOFTER我的照片书 | 1:如何获取cookies. 1.1 ...
- C++ 面向对象的三个特点--继承与封装(二)
顺着上一篇的内容,我们继续来了解继承的基本知识. 派生类的构造函数和析构函数 派生类继承了基类的成员,但是不能继承基类的构造函数和析构函数,首先,我们了解构造函数和析构函数的执行顺序是当我们创建一个派 ...
- 【GOF23设计模式】原型模式
来源:http://www.bjsxt.com/ 一.[GOF23设计模式]_原型模式.prototype.浅复制.深复制.Cloneable接口 浅复制 package com.test.prot ...
- javascript Array 方法学习
原生对象Array学习 Array.from() 从类似数组的对象或可迭代的对象返回一个数组 参数列表 arraylike 类似数组的对象或者可以迭代的对象 mapfn(可选) 对对象遍历映 ...
- SAPScript、Smartforms动态打印图像或者背景图片
在利用 SMARTFORMS 进行打印的时候有时候要求输出的图片可能是随着打印内容的不同而不同了,也就是动态输出图片,SMARTFORMS的提供了相关的支持技术,下面是实现截图 1.创建要显示的图片 ...