在 1Panel 升级 OpenResty 以启用 HTTP/3 的支持
此方法仅在 1Panel v1.10.0
配合 OpenResty 1.25.3.1-2-focal
上测试通过, 其他版本自行测试.
什么是 HTTP/3
HTTP 是互联网的重要骨干——它决定了通信平台和设备如何交换信息和获取资源。简而言之,正是它让用户能够加载网站。
HTTP/3 是一项新的开发标准,它将影响 Web 浏览器和服务器的通信方式,并显著提升用户体验,包括性能、可靠性和安全性。
在第一个超文本传输协议 (HTTP) 于 1991 年发布后,随后的迭代在不对底层代码做任何变更的前提下使网站速度更快。
了解更多.
升级 OpenResty
登录 1Panel
转到 应用商店
, 在顶部选择 已安装
. 找到 OpenResty
应用.
点击 参数
, 然后点击 编辑
. 勾选 高级设置
, 然后勾选 编辑 compose 文件
.
修改配置文件中的 image
内容, 此为容器使用的镜像.
services:
openresty:
...
image: openresty/openresty:1.21.4.3-0-focal
...
将其版本修改为 1.25.3.1-2-focal
, 然后点击 确认
重建应用.
services:
openresty:
...
image: openresty/openresty:1.25.3.1-2-focal
...
网站配置
进入网站设置, 然后点击 配置文件
, 在绑定 443
端口下一行添加 listen 443 quic ;
.
...
listen 443 ssl http2 ;
listen 443 quic ;
...
然后在配置文件找到 Strict-Transport-Security
头添加处, 在下一行添加 add_header Alt-Svc 'h3=":443"; ma=2592000';
.
对于 反向代理
类型的网站, 应在 反向代理
中, 对应反代配置的 源文
中添加.
...
add_header Strict-Transport-Security "max-age=31536000";
add_header Alt-Svc 'h3=":443"; ma=2592000';
...
开发端口
HTTP/3
是基于 UDP
协议, 因此需要开放 UDP
协议的 443
端口.
Debian
ufw allow 443/udp
RedHat
firewall-cmd --permanent --add-port=443/udp
如果开放后依然无法使用, 可以检查一下是不是服务商的防火墙设置没有开放.
检测
可以按 F12
启动 DevTools
, 然后点击 网络
, 刷新页面观察 协议
是否为 h3
.
如无 协议
列. 可右键表头, 然后选择 协议
即可.
也可以访问 HTTP/3 Check, 然后输入你的网站域名进行检测.
本站已开启 HTTP/3
支持, 点击检测