配置HTTP 2
更新时间:2023-10-23
概述
百度CDN已经支持HTTP/2协议,开启HTTP/2之前,首先要确认域名已开启HTTPS配置。您通过百度智能云CDN API或CDN控制台开启HTTPS配置后,便可按需开启或关闭HTTP/2。
HTTP/2原理
HTTP/2是HTTP的新版本,由IETF于2015年5月以RFC 7540正式发表。它主要基于SPDY协议,在请求方式、状态码、URI和多数HTTP Header字段都和HTTP/1.1 保持高度兼容,并在此基础上有下述优化,提高浏览器的页面加载速度、减少网络延迟:
- 单个长连接:单一页面可一直复用一个连接,无需新建连接,可优化由于创建多个TCP连接导致的时延,提高吞吐量。
- 多路复用:在单个连接中,多个请求或响应可同时存在于多个独立的stream上,避免HOL堵塞(Head of Line Blocking)。
- 优先级排序:对请求标记依赖层级,相同层级支持对请求和响应按优先级排序,Server可依次排序填充数据,提高特定请求的响应速度。
- 头部压缩和二进制编码:HTTP/2新引入HPACK算法,用于对HTTP头部做压缩,以减少头部数据的传输。此外,HTTP头部使用二进制编码进行传输,替代HTTP/1.x中的纯文本传输。
- 服务器推送:服务端向客户端发送比客户端请求更多的数据,即允许服务器直接提供浏览器渲染页面所需资源,无需浏览器收到或解析页面后再提起一轮请求,节约加载时间。
- SSL加密:主流浏览器支持的HTTP/2均基于SSL加密,在保证性能的前提下使网站更安全。在ALPN的支持下,客户端可以主动选择使用HTTP/2还是HTTP/1.1,提高兼容性。
HTTP/2优势
HTTP/2允许在同一连接上交替发送请求和响应消息,使用高效率的编码HTTP Header字段,可对请求定义优先级、快速响应更重要的请求。此协议减少了TCP连接的建立,与其他流更少的竞争和更长时间的链接,可有效提高网络容量的利用率。
- 高效:头部压缩和二进制编码提高了请求和响应的效率,多路复用可避免HOL堵塞。
- 灵活:通过定义请求的优先级,可以快速获取更重要的响应请求。
- 快速:服务器推送可预先获得服务器推送至客户端的资源,提高网页加载速度。
- 安全:主流浏览器均支持基于TLS加密的HTTP/2协议,保证客户网站的安全性。
前提条件
在开启 HTTP/2 前,您需要确保已成功配置 HTTPS 证书,配置详情请参考 配置HTTPS。
HTTP/2 配置
- 登录 CDN管理控制台,在控制台左侧导航选择 域名管理。
-
在 域名管理 页,选择需要设置HTTP/2的域名,在最右侧操作栏单击 管理,如下图所示。
-
在 域名详情 页,单击 HTTPS配置,如下图所示。
-
在 HTTPS配置 页签的 HTTP/2配置处,将开关设置为 开 状态即可。(域名需先配置HTTPS证书,才可以开启HTTP/2)