HTTP1.0 -> HTTP1.1
- 长连接:HTTP1.0需要使用keep-alive参数来告知服务器端要建立一个长连接,而HTTP1.1默认支持长连接。(TCP三次握手,有开销,可以维持一个长连接)
- 节约带宽:HTTP1.1支持只发送header信息(不带任何body信息),如果服务器认为客户端有权限请求服务器,则返回100,否则返回401。客户端接收100,才把请求body发送到服务器。(判断状态码,从而节约带宽)
- HOST 域:webServer上的多个虚拟站点可以共享同一个ip和端口。(HTTP1.0没有HOST域,HTTP1.1才支持这个参数)
HTTP1.1 -> HTTP2.0
- 多路复用:同一个连接并发处理多个请求,并发请求的数量比HTTP1.1大好几个数量级。
- 数据压缩:HTTP1.1不支持header数据的压缩,HTTP2.0使用HPACK算法对header的数据进行压缩。
- 服务器推送:服务器顺便把一些客户端需要的资源一起推送到客户端,免得再次发起请求。(适合加载静态资源)