HTTP服务器工作原理
来源:互联网 发布:张鲁 三国杀淘宝 编辑:程序博客网 时间:2024/05/29 19:55
HTTP协议定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端。HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求报文,请求报文包含请求的方法、URL、协议版本、请求头部和请求数据。服务器以一个状态行作为响应,响应的内容包括协议的版本、成功或者错误代码、服务器信息、响应头部和响应数据。下图表明了这种请求/响应模型。
以下是HTTP请求/响应的步骤:
(1)客户端连接到Web服务器
一个HTTP客户端,通常是浏览器,与Web服务器的HTTP端口(默认为80)建立一个TCP套接字连接。例如,http://www.oakcms.cn。
(2)发送HTTP请求
通过TCP套接字,客户端向Web服务器发送一个文本的请求报文,一个请求报文由请求行、请求头部、空行和请求数据4部分组成。
(3)服务器接受请求并返回HTTP响应
Web服务器解析请求,定位请求资源。服务器将资源复本写到TCP套接字,由客户端读取。一个响应由状态行、响应头部、空行和响应数据4部分组成。
(4)释放连接TCP连接
Web服务器主动关闭TCP套接字,释放TCP连接;客户端被动关闭TCP套接字,释放TCP连接。
(5)客户端浏览器解析HTML内容
客户端浏览器首先解析状态行,查看表明请求是否成功的状态代码。然后解析每一个响应头,响应头告知以下为若干字节的HTML文档和文档的字符集。客户端浏览器读取响应数据HTML,根据HTML的语法对其进行格式化,并在浏览器窗口中显示。
HTTP协议的无状态性
HTTP协议是无状态的(stateless)。也就是说,同一个客户端第二次访问同一个服务器上的页面时,服务器无法知道这个客户端曾经访问过,服务器也无法分辨不同的客户端。HTTP的无状态特性简化了服务器的设计,使服务器更容易支持大量并发的HTTP请求。
持久连接
HTTP1.0使用的是非持久连接,客户端必须为每一个待请求的对象建立并维护一个新的连接。因为同一个页面可能存在多个对象,所以非持久连接可能使一个页面的下载变得十分缓慢,而且这种短连接增加了网络传输的负担。HTTP1.1引入了持久连接,允许在同一个连接中存在多次数据请求和响应,即在持久连接情况下,服务器在发送完响应后并不关闭TCP连接,而客户端可以通过这个连接继续请求其他对象。
- HTTP服务器工作原理
- HTTP服务器工作原理
- web服务器---HTTP工作原理
- HTTP sever(web 服务器)工作原理
- web服务器工作原理及http协议通信
- web服务器工作原理及http协议通信
- web服务器工作原理及http协议通信
- web服务器工作原理及http协议通信
- HTTP压缩工作原理
- http/apache工作原理
- HTTP工作原理
- HTTP工作原理
- HTTP协议工作原理
- http代理服务器工作原理
- HTTP详解-工作原理
- HTTP工作原理
- HTTP详解-工作原理
- HTTP 协议工作原理
- asp.net中ObjectDataSource“”未能找到带参数的非泛型方法“DelnewsClass”: p1, id 问题
- mysql数据库密码忘记怎么办,没事看这里
- 蛇形填数
- Cocos2dx游戏开发工程师[更新完毕-共享完毕]
- Java操作hbase
- HTTP服务器工作原理
- H5项目常见问题汇总及解决方案
- 读书笔记-《深入理解Java虚拟机》-对象探秘
- cookie和session的区别
- Java笔试题解(1)
- Leetcode 10. Regular Expression Matching
- 使用DDMS中的native heap检查Android native内存泄露
- 关于JS创建对象的几个常见模式
- 扩展知识