首先确保:
1 nginx 升级到 1.28.0 或者更新 .
2 防火墙放行 udp 443.
配置文件修改:
第一个 server 增加:
listen 443 quic reuseport;
listen [::]:443 quic reuseport;
ssl_protocols TLSv1.2 TLSv1.3;
http2 on;
http3 on;
add_header Alt-Svc 'h3=":443"; ma=86400';
完整示例:
server {
listen 443 ssl ;
listen [::]:443 ssl ;
listen 443 quic reuseport;
listen [::]:443 quic reuseport;
server_name example.com;
ssl_certificate /path/fullchain.pem;
ssl_certificate_key /path/key.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256';
http2 on;
http3 on;
add_header Alt-Svc 'h3=":443"; ma=86400';
root /var/www/html;
index index.html index.htm index.php;
...
}
如果有多个 server 的话不允许再次
listen 443 quic reuseport;
否则会端口冲突。所以其余的 server 使用:
listen 443 quic;
例如:
第二个 server 增加:
listen 443 quic;
listen [::]:443 quic;
ssl_protocols TLSv1.2 TLSv1.3;
http2 on;
http3 on;
add_header Alt-Svc 'h3=":443"; ma=86400';
更多的 server 同上。
TEST:
PowerShell 7.5.2
PS C:\Users\Liuyu> mycurl -I --http3 https://ip.f78fk.com/?format=text
HTTP/3 200
server: nginx/1.28.0
date: Thu, 31 Jul 2025 17:31:09 GMT
content-type: text/plain; charset=utf-8
alt-svc: h3=":443"; ma=86400
PS C:\Users\Liuyu>
系统自带的 curl 不支持 http3, 所以需要去官网下载最新版:
没有评论:
发表评论