抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

QUIC 是种基于 UDP 实现的传输层协议,由 Google 提出,旨在减少握手延迟,实现快速连接建立、多路复用、连接迁移功能。本教程分享如何在 OpenResty 开启 QUIC 支持。

准备工作

确保已经成功安装了 OpenResty。如果看到 OpenResty 的欢迎页面,说明安装成功。

OpenResty 通过集成 Nginx 并利用其模块化特性支持 QUIC。需要在 Nginx 配置文件中启用 QUIC 支持。通常涉及到配置监听 UDP 端口,因为 QUIC 运行在 UDP 上。

OpenResty 从 1.25 版本开始支持 QUIC,如果是之前的版本,需要自行编译安装模块以支持 QUIC。

使用支持 QUIC 的客户端工具测试 QUIC 连接是否成功建立。

监听端口

对于每个站点,需在 Nginx 配置文件中为 QUIC 配置监听端口。由于 QUIC 运行在 UDP 上,需为每个站点配置一个监听 UDP 端口的指令。例如,如果有两个站点 site1site2,可以这样配置:

1
2
3
4
5
server {
listen 443 quic reuseport;
server_name site1.dusays.com;
# site1 的其它配置...
}

这里的 443444 是用于 QUIC 的 UDP 端口,quic 指定 QUIC 协议,reuseport 是为了提高性能:

1
2
3
4
5
server {
listen 444 quic reuseport;
server_name site2.dusays.com;
# site2 的其它配置...
}

端口复用

如果在一台服务器包含多个网站,其中一个网站添加 reuseport 参数后,则其它网站无法再次添加 reuseport 参数:

1
2
3
4
5
server {
listen 443 quic reuseport;
server_name site1.dusays.com;
# site1 的 QUIC 加密和伪装配置...
}

多次添加 reuseport 参数会提示端口冲突,这时可以删除其中的 reuseport 参数,或者使用不同的 UDP 端口。例如:

1
2
3
4
5
server {
listen 443 quic;
server_name site2.dusays.com;
# site2 的 QUIC 加密和伪装配置...
}

测试连接

使用支持 QUIC 客户端工具测试每个站点的 QUIC 连接是否成功建立,这可以帮助验证服务器端的配置是否正确:

评论