NGINX HTTP/3 实验指南安装、配置与调优

一、HTTP/3 简介

  • 基于 QUIC:在 UDP 之上实现的多路复用传输,内置拥塞控制与前向纠错,无需三次握手即可恢复连接。
  • 零 RTT 重连:借助 TLS 1.3,实现连接恢复时的 0-RTT 数据发送(视底层库支持)。
  • 多路复用无队头阻塞:每个流独立拥塞控制,单流丢包不影响其他流。
  • 内置安全:QUIC 自带加密,TLS 与传输层紧密集成。

注意:当前模块为实验性功能(>=1.25.0),需自行评估风险。

二、环境与依赖

  1. NGINX ≥ 1.25.0 ,编译时加上 --with-http_v3_module
  2. QUIC 库:推荐 BoringSSL、LibreSSL 或 QuicTLS;若用 OpenSSL,则走兼容层,不支持早期数据(0-RTT)。
  3. 内核要求:Linux 5.7+(使用 eBPF 路由或 GSO 优化时)。

三、示例配置

nginx 复制代码
http {
    log_format quic '$remote_addr - $remote_user [$time_local] '
                    '"$request" $status $body_bytes_sent '
                    '"$http_referer" "$http_user_agent" "$http3"';

    access_log /var/log/nginx/quic_access.log quic;

    server {
        # 同端口同时监听 HTTP/3(UDP)和 HTTPS(TCP)
        listen 8443 quic reuseport;
        listen 8443 ssl;

        ssl_certificate     /etc/ssl/example.crt;
        ssl_certificate_key /etc/ssl/example.key;
        ssl_protocols       TLSv1.3;

        # 通知客户端支持 HTTP/3
        add_header Alt-Svc 'h3=":8443"; ma=86400';

        location / {
            root /var/www/html;
            index index.html;
        }
    }
}
  • listen ... quic:开启 QUIC(UDP)监听
  • add_header Alt-Svc:通过 Alt-Svc 通告浏览器可走 HTTP/3

四、核心指令详解

指令 默认值 作用
`http3 on off` on 全局/Server 级启用或关闭 HTTP/3 协商
`http3_hq on off` off 启用 HTTP/0.9 over QUIC,用于兼容性测试
http3_max_concurrent_streams 128
相关推荐
骇客野人3 小时前
Redis 完整安装部署方案(Linux,分【源码编译】+【Docker】两种,推荐生产用源码,测试快速用 Docker)
运维
比兔代理4 小时前
正向代理与反向代理技术辨析,为什么代理 IP 属于正向代理
服务器·网络·http·ip
蓝速科技6 小时前
会议室门牌公告通知发布选型与落地指南丨蓝速科技
大数据·运维·数据库·人工智能·科技
chicheese7 小时前
Linux 面试速查表:从初级到高级,附高频场景答题模板
linux·运维
Linux-lucky7 小时前
32-38-Linux学习之旅之MySQL综合
linux·运维·学习·mysql·ubuntu
智能运维指南8 小时前
2026年ITSM系统怎么选?四款主流方案与五维评估模型
运维·itsm·嘉为蓝鲸
我命由我123458 小时前
Git 推送报错:error: src refspec main does not match any
运维·git·gitee·github·运维开发·学习方法·版本控制
骇客野人8 小时前
测试环境MySQL迁移Vastbase(海量数据库)完整改造与落地实施方案
运维·服务器
迪康Defender8 小时前
终端安全实战:如何高效解决企业U盘泄密与管控难题
运维·网络·安全·web安全·终端安全管理
zly35009 小时前
VMware Converter Standalone 物理机转化为虚拟机后源1硬盘变成了2个硬盘(2个硬盘文件)虚拟机无法启动。
linux·运维·服务器