Home Page



转载:https://www.cnblogs.com/andashu/p/6441271.html

各版本 HTTP 协议对比

​HTTP 协议到现在为止总共经历了 3 个版本的演化,第一个 HTTP 协议诞生于 1989 年 3 月。

1090298-20170225110614929-1968350403

HTTP 0.9

HTTP 0.9 是第一个版本的 HTTP 协议,已过时。它的组成极其简单,只允许客户端发送 GET 这一种请求,且不支持请求头。由于没有协议头,造成了 HTTP 0.9 协议只支持一种内容,即纯文本。不过网页仍然支持用 HTML 语言格式化,同时无法插入图片。

HTTP 0.9 具有典型的无状态性,每个事务独立进行处理,事务结束时就释放这个连接。由此可见,HTTP 协议的无状态特点在其第一个版本 0.9 中已经成型。一次 HTTP 0.9 的传输首先要建立一个由客户端到 Web 服务器的 TCP 连接,由客户端发起一个请求,然后由 Web 服务器返回页面内容,然后连接会关闭。如果请求的页面不存在,也不会返回任何错误码。

HTTP 0.9 协议文档: http://www.w3.org/Protocols/HTTP/AsImplemented.html

HTTP 1.0

HTTP 协议的第二个版本,第一个在通讯中指定版本号的 HTTP 协议版本,至今仍被广泛采用。相对于 HTTP 0.9 增加了如下主要特性:

HTTP 1.1

HTTP 协议的第三个版本是 HTTP 1.1,是目前使用最广泛的协议版本。HTTP 1.1 是目前主流的 HTTP 协议版本,因此这里就多花一些笔墨介绍一下 HTTP 1.1 的特性。

HTTP 1.1 引入了许多关键性能优化:keepalive 连接,chunked 编码传输,字节范围请求,请求流水线等。

1090298-20170225110733726-609742802

1090298-20170225110825413-1215050354

另外,HTTP 1.1 还新增了如下特性:

HTTP 2.0

HTTP 2.0 是下一代 HTTP 协议,目前应用还非常少。主要特点有:

1090298-20170225110844960-275706205