您的位置:首页 > 理论基础 > 计算机网络

http协议

2015-09-10 17:21 281 查看
PHP抛出异常,对应的状态码? 200?

HTTP,超文本传输协议。它定义了浏览器和服务器的通信规则。HTTP协议是基于TCP/IP的TCP协议上,现在万维网使用的是HTTP1.1版本,其特点包括,C/S模式,请求简单(GET/POST/HEAD),灵活(可以传输任何类型的数据HTML、XML、JSON、自定义等),无状态。

HTTP协议主要包括,响应消息格式、请求消息格式、状态码知识点。

[响应消息格式]

HTTP/1.1 200 0K
Connectlon:close
Date: Thu, 13 Oct 2005 03:17:33 GMT
Server: Apache/2.0.54 (Unix)
Last—Nodified:Mon,22 Jun 1998 09;23;24 GMT
Content—Length:682l
Content—Type:text/html


这个响应消息分为3部分:1个起始的状态行(status line),6个头部行、1个包含所请求对象本身的附属体。

状态行有3个字段:协议版本字段、状态码字段、原因短语字段。

[请求消息格式]

GET /somedir/page.html HTTP/1.1
Host:
Connection:close
User-agent:Mozilla/4.0
Accept-language:zh-cn


(额外的回车符和换行符)

该请求消息的第一行称为请求行 (request line),后续各行都称为头部行(header)。请求行有3个字段:方法字段、URL字段、HTTP版本字段。

[状态码]参见

1xx 消息
2xx 成功  这一类型的状态码,代表请求已成功被服务器接收、理解、并接受
3xx 重定向  这类状态码代表需要客户端采取进一步的操作才能完成请求。通常,这些状态码用来重定向,后续的请求地址(重定向目标)在本次响应的 Location 域中指明。
4xx 请求错误  这类的状态码代表了客户端看起来可能发生了错误,妨碍了服务器的处理。除非响应的是一个 HEAD 请求,否则服务器就应该返回一个解释当前错误状况的实体,以及这是临时的还是永久性的状况。
5xx 服务器错误  这类状态码代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。除非这是一个HEAD 请求,否则服务器应当包含一个解释当前错误状态以及这个状况是临时的还是永久的解释信息实体。浏览器应当向用户展示任何在当前响应中被包含的实体。

200 OK。请求已成功,请求所希望的响应头或数据体将随此响应返回。
301 Moved Permanently。表示请求的网页已永久转移到新位置
302 Found。表示页面在做临时跳转时返回的状态。
303 Not Modified。客户的缓存资源是最新的, 要客户端使用缓存。

401 未授权。

403 Forbidden。请求被服务器拒绝了。
404 Not Found。表示服务器找不到请求的网页,服务器上不存在的网页经常会返回的HTTP状态码。
500 Internal Server Error。
503 Service Unavailable。服务器目前无法为请求提供服务,但过一段时间就可以恢复服务。
504 Gateway Timeout。与状态吗408类似, 但是响应来自网关或代理,此网关或代理在等待另一台服务器的响应时出现了超时。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: