HTTP/3 作为新一代的 HTTP 协议,以其更快的速度和更高的安全性备受关注。本文将指导您如何在 Nginx 1.25 上启用 HTTP/3,并详细解释所需的编译参数和配置。
编译参数
在编译 Nginx 时,需要添加以下参数以支持 HTTP/3:
--with-http_v3_module
:启用 HTTP/3 模块。--with-openssl=<path-to-openssl-1.1.1>
:指定 OpenSSL 1.1.1 或更高版本的路径,因为 HTTP/3 需要支持 TLS 1.3。--with-quiche=<path-to-quiche>
:指定 quiche 库的路径,它是 HTTP/3 的实现库。
配置
完成编译后,您需要在 Nginx 配置文件中添加以下内容:
server {
listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;
# 启用 HTTP/3
listen 443 quic reuseport;
listen [::]:443 quic reuseport;
http2 on;
http3 on;
# ... 其他配置 ...
}
配置说明:
listen 443 quic reuseport;
和listen [::]:443 quic reuseport;
:这两行启用 HTTP/3 监听,分别用于 IPv4 和 IPv6。reuseport
:该参数允许多个 worker 进程监听同一个端口,提高性能。注意,listen
指令只能使用一次reuseport
。http2 on;
:启用 HTTP/2 支持。http3 on;
:启用 HTTP/3 支持。
其他注意事项
- 确保您的服务器拥有有效的 TLS 证书,因为 HTTP/3 需要加密连接。
- 客户端也需要支持 HTTP/3 才能使用此功能。目前,Chrome、Firefox 和 Edge 等主流浏览器都已支持 HTTP/3。
总结
通过添加必要的编译参数和配置,您可以在 Nginx 1.25 上轻松启用 HTTP/3,享受更快速、更安全的网络体验。请记住,reuseport
参数只能在每个 listen
指令中使用一次,以确保配置正确。