Blogger Information
Blog 13
fans 0
comment 0
visits 11335
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
HTTP协议
莫名的博客
Original
1049 people have browsed it

定义:超文本传输协议,是web浏览器和web服务器在交互过程中必须遵循的规则,基于tcp/ip协议的应用层协议


运行方式:

1.建立连接

2.发送请求

3.发送响应内容

4.关闭连接


引入问题:

1.服务器和浏览器是如何通信的?

2.服务器数如何对浏览器发送的请求进行处理的?

3.浏览器是如何对服务器返回的数据进行处理?


OSI七层模型:

1.应用层

2.表示层

3.会话层

4.传输层

5.网络层

6.数据链路层

7.物理层


背景:

TCP/UDP是广泛使用的网络通讯协议,那么为什么又出来一个http呢?

UDP协议具有不可靠性和不安全性,显然这很难满足web应用的需求,而TCP是基于三次握手,虽然具有可靠性,但是具有一定的缺陷,试想,普通的C/S软件,顶多上千个client同时连接,而B/S架构的网站,几万人在线是很常见的,如果几万个用户同时和服务器一直保持连接,那么服务器将如何承载呢?

引出:

所以这就出现了http协议,基于tcp的可靠连接,但是在请求之后,服务器会立即关闭连接,释放资源,这样既确保了资源可用,有吸取了tcp可靠的优点

但是,也是因为这点,http变成了无状态协议,即服务器不知道客户端干了什么,其实这紧紧是基于性能的考虑


http协议分为请求和响应

请求:

1.请求行

描述客户端的请求方式,请求的资源名称,以及使用http协议的版本号

2.请求头

描述客户端请求了哪台主机,以及客户端的一些常用信息

3.请求内容

post提交表单内容

get提交url上问号后的内容

响应:

1.响应行

描述服务器对请求的处理结果

2.响应头

描述服务器的基本信息,以及数据的描述。

3.响应内容

告诉浏览器发送的信息


状态码:

100-199:表示完成接受请求,要求客户端继续提交下一次请求才能完成整个处理过程

200-299:表示完成请求并已完成整个处理过程

300-399:为完成请求,客户端需要进一步细化请求,例如,请求资源已经移动一个新地址

400-499:客户端请求出错

500-599:服务器端出现错误



Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post