LNMP 环境下 Nginx 1.26.0 开启 HTTP/3 QUIC 支持
创始人
2024-11-13 16:36:07
0

前几天 Nginx 1.26.0 主线版发布了,明月总算抽出时间更新了,那么自然的也要尝试一下开启 HTTP/3 QUIC 支持了,今天就给大家分享一下。对于我们的网站来说开启 HTTP/3 QUIC 最大的好处是页面载入速度的提升,尤其是在支持 HTTP/3 QUIC 的浏览器下表现相当的出众,页面间的切换几乎都是闪现。

LNMP 环境下 Nginx 1.26.0 开启 HTTP/3 QUIC 支持

Nginx 自从 1.25.X 主线版开始就已经支持 HTTP/3 QUIC 了,这次 Nginx 1.26.0 算是进一步完善了 HTTP/3 QUIC,要在 Nginx1.26.0 里开启 HTTP/3 QUIC 支持,我们只需要升级到 Nginx 1.26.0 的时候加入--with-http_v3_module这个编译参数即可,像 LNMP 一键安装包、宝塔面板里都是如此。注意,默认升级 Nginx 1.26.0 是没有这个编译参数的,必须要手动添加这个参数。参加这个参数后编译升级 Nginx 过程会相对增加,所以大家耐心等待即可。

LNMP 环境下 Nginx 1.26.0 开启 HTTP/3 QUIC 支持

编译完成后,你的 Nginx 1.26.0 就已经支持 HTTP/3 QUIC 了,我们就可以在 Nginx 站点配置文件里开启 HTTP/3 QUIC 了,在 Nginx 站点配置文件里添加listen 443 quic reuseport;来增加监听 443 端口的 UDP 协议(这个大家可以参考【OpenLiteSpeed 如何正确的开启 HTTP/3 QUIC】一文里专门强调的开启 443 端口 UDP 协议方法),如下图所示:

LNMP 环境下 Nginx 1.26.0 开启 HTTP/3 QUIC 支持

可以看到添加完成后是两条listen,这就对了,要的就是这个效果。并且就算你有多个站点,也只需要添加这一次,其他站点 Nginx 配置文件里就不用添加这段了。只需要同样的添加下面的语句:

#开启 HTTP/3 QUIC 支持 add_header Alt-Svc 'h3=":443"; ma=86400'; ssl_early_data on; 

就可以了,保存配置文件,重启 Nginx 就完成开启 HTTP/3 QUIC 了。去 HTTP/3 CHECK 检测你的网址看看是不是已经支持 HTTP/3 QUIC 了:

LNMP 环境下 Nginx 1.26.0 开启 HTTP/3 QUIC 支持

浏览器对 HTTP/3 QUIC 的支持情况,据明月自己实测手机端 Edge、国内 360 极速浏览器都是支持的,开启 HTTP/3 QUIC 后,首次载入网页可能会存在没有生效,但只要再次重新载入页面就会显示是 QUIC 了

LNMP 环境下 Nginx 1.26.0 开启 HTTP/3 QUIC 支持

这就是在手机端 Edge 上显示效果

LNMP 环境下 Nginx 1.26.0 开启 HTTP/3 QUIC 支持

这是 PC 端 360 极速浏览器上的现实效果

有站长说国内运营商不支持 HTTP/3 QUIC 或者说封杀 HTTP/3 QUIC,明月实测后发现并不是这样的,有些地区出现浏览器打开开启 HTTP/3 QUIC 支持的站点不显示“该连接使用 QUIC”的罪魁祸首其实是本地电脑的 DNS 缓存过于陈旧造成的(因为 HTTP/3 QUIC 需要 443 端口支持 UDP 协议,都是单独开启的,所以就要求 DNS 解析记录必须是及时更新的),这个我在【亲,你有多久没有清理过你电脑的 DNS 缓存了?】一文里专给大家讲过了,有兴趣的可以移步去了解一下,定期清理一下自己电脑的 DNS 缓存尤其是在国内绝对是个好习惯的。

浏览器开启 HTTP/3 QUIC 支持的方法

Google Chrome - 在浏览器上访问 chrome://flags/#enable-quic,找到”Experimental QUIC protocol”,并启用之(Enabled)。

Microsoft Edge - 在浏览器上访问 edge://flags/#enable-quic,找到”Experimental QUIC protocol”,并启用之(Enabled)。

Firefox - 在浏览器上访问 about:config,然后搜索”network.http.http3.enable”,并点击对应行末尾的切换图标,启用之(true)。

Safari - 最新版本的 Safari 已经自动支持 HTTP/3,无需任何额外配置。

LNMP 环境下 Nginx 1.26.0 开启 HTTP/3 QUIC 支持

对于使用了国内 CDN 的站点来说,这个 Nginx 里开启 HTTP/3 QUIC 后可能是没有效果的,因为还需要 CDN 层面的支持,国内支持 HTTP/3 QUIC 的好像只有七牛、又拍云,国外 CloudFlare 免费支持 HTTP/3 QUIC 开启的,并且只要 CDN 支持 HTTP/3 QUIC,源站开没开启 HTTP/3 QUIC 都是可以的,所以本文更多的是处于技术学习的范畴了,毕竟现在网站没有 CDN 的保护是不敢想象的,裸奔的服务器和网站在现在的国内互联网生态里太少见了。

相关内容

热门资讯

此事引发网友热议!赣牌圈小程序... 此事引发网友热议!赣牌圈小程序黑科技入口(辅助)本来有辅助下载(有挂存在)-哔哩哔哩赣牌圈小程序黑科...
一分钟了解!欢乐达人暗堡链接脚... 一分钟了解!欢乐达人暗堡链接脚本,德友汇辅助,演示教程(的确有挂)-哔哩哔哩一、欢乐达人暗堡链接脚本...
有了最新消息!白金岛十胡卡辅助... 有了最新消息!白金岛十胡卡辅助(辅助)其实存在有辅助平台(有人有挂)-哔哩哔哩1、任何白金岛十胡卡辅...
第3分钟了解!逗娱碰胡辅助器,... 第3分钟了解!逗娱碰胡辅助器,免费辅助神器app,方式教程(讲解有挂)-哔哩哔哩免费辅助神器app能...
连日来!微信途游辅助(辅助)确... 连日来!微信途游辅助(辅助)确实存在有辅助软件(有挂透视)-哔哩哔哩1、许多玩家不知道微信途游辅助辅...
第九分钟了解!创思维激k看底牌... 第九分钟了解!创思维激k看底牌辅助开发商,微信小程序微乐辅助器教程,要领教程(存在有挂)-哔哩哔哩1...
突发!火神大厅辅助(辅助)一贯... 突发!火神大厅辅助(辅助)一贯真的有辅助工具(确实有挂)-哔哩哔哩1.火神大厅辅助 选牌创建新账号,...
十分钟了解!随意玩游戏平台官方... 十分钟了解!随意玩游戏平台官方挂开挂,越乡游双扣辅助器,教程书教程(有挂猫腻)-哔哩哔哩1、实时随意...
记者获悉!道游互娱透视辅助截图... 记者获悉!道游互娱透视辅助截图(辅助)果然真的有辅助辅助器(有挂透明挂)-哔哩哔哩1、很好的工具软件...
2分钟了解!广东雀伸辅助器,开... 2分钟了解!广东雀伸辅助器,开心泉州小程序有挂吗,手册教程(有挂透明挂)-哔哩哔哩该软件可以轻松地帮...