HTTP协议概述
定义
HTTP 即 Hyper Text Transfer Protocol(超文本传输协议),用于实现 Web 服务器到客户端之间的通信。
起源
HTTP 源自1960年,美国人 Ted Nelson 构思了一种通过计算机处理文本信息的方法,并称之为超文本( hypertext )。Ted Nelson 组织协调万维网协会(World Wide Web Consortium)和 Internet 工作小组(Internet Engineering Task Force)共同合作研究,最终发布了一系列的 RFC,其中最著名的就是 RFC 2616。RFC 2616 定义了 HTTP 协议的我们今天普遍使用的一个版本——HTTP 1.1。 由于 Ted Nelson 对 HTTP 技术的发展做出的突破性历史贡献,他被称为 “HTTP之父”。
版本
HTTP 分为 0.9、1.0、1.1、2.0 多个版本,目前主流使用的版本是 1.1 版本,支持各种文件类型。
http 0.9,1991年,第一个正式使用的 HTTP 协议,仅支持 GET 方法和 HTML 文本传输。
http 1.0,1996年,开始支持富文本,支持多种请求方法(GET/POST/PUT/HEAD)。
http 1.1,1999年,最广泛使用的版本,支持 GET/POST/PUT/HEAD/OPTIONS/DELETE/TRACE/CONNECT。
http 2.0,2015年,HTTP 2.0正式发布。
http 2.0 多路复用。
2.0 二进制格式。
无连接无状态
HTTP 协议具备无连接无状态的特点,每次请求响应都是独立的,服务器默认无法“记住”客户端。
后续引入 cookie 和 session 解决这个问题。