Web

HTTP, HTTP/2, HTTPS有什么区别

Posted by Kerwen Blog on May 6, 2022

HTTP

HTTP 超文本传输协议是位于 TCP/IP 体系结构中的应用层协议,是客户端(例如 Web 浏览器)向服务器(例如 Web 服务器)请求资源的协议。 img

HTTPS

HTTPS 是最流行的 HTTP 安全形式,由网景公司首创。 使用 HTTPS 时,所有的 HTTP 请求和响应数据在发送之前,都要进行加密。加密可以使用 SSL 或 TLS。

HTTP/2

HTTP/1.1 - 是目前使用最广泛的版本,一般没有特别标明版本都是指 HTTP/1.1。它是一种基于文本的协议,但效率低下——尤其是在请求大量资源(如典型网页)时。HTTP/1.1 消息可以未加密(网站地址以 http:// 开头)或使用 HTTPS 加密(网站地址以 https:// 开头)。客户端使用 URL 的开头来决定使用哪个协议,如果没有提供,通常默认为 http://。

HTHTTP/2 是 HTTP/1.x 的扩展,而非替代。所以 HTTP 的语义不变,提供的功能不变,HTTP 方法、状态码、URL 和首部字段等这些核心概念也不变。之所以要递增一个大版本到 2.0,主要是因为它改变了客户端与服务器之间交换数据的方式。HTTP 2.0 增加了新的二进制分帧数据层,而这一层并不兼容之前的 HTTP 1.x 服务器及客户端
现在的主流浏览器 HTTP/2 的实现都是基于 SSL/TLS 的,也就是说使用 HTTP/2 的网站都是 HTTPS 协议的

如何查看网站用的是哪种协议?
打开一个网站,按F12,切到network tab页,右键 column,勾选协议,然后重新刷新下页面,就可以看到协议类型 img

h2就是HTTP/2的缩写 img

Reference

What is difference between httpS and http/2?
半小时搞懂 HTTP、HTTPS和HTTP2
What is the HTTP/2 Protocol?