Nginx 开启 HTTP/3 和 QUIC 配置教程
Nginx 开启 HTTP/3 和 QUIC 配置教程
Nginx 通过开启 HTTP/3 和 QUIC 协议,能够提升网站的访问速度和安全性(大陆内地相反)。本文将介绍如何在 Nginx 中启用这两个协议,并提供相关的配置说明。
一、前提条件
- Nginx 版本:需要 Nginx 1.19 及以上支持QUIC的版本。
可以参考这篇编译安装 Nginx 教程来完成 Nginx 的安装。
二、配置 Nginx 启用 QUIC 和 HTTP/3
在 Nginx 配置文件中启用 HTTP/3 和 QUIC 需要修改如下内容:
server {
listen 443 ssl;
listen [::]:443 ssl;
# 启用 QUIC 协议,如果有多个站点,其中一个站点加reuseport后,其他的站点无需加reuseport
listen 443 quic reuseport;
listen [::]:443 quic reuseport;
# 启用 HTTP/2 和 HTTP/3
http2 on;
http3 on;
# QUIC 相关配置
quic_retry on;
quic_gso on;
# openssl genpkey -algorithm X25519 -out /etc/nginx/ssl/quic_host.key
quic_host_key /etc/nginx/ssl/quic_host.key;
# 设置 Alt-Svc 头,告诉客户端支持 HTTP/3
add_header Alt-Svc 'h3=":443"; ma=86400';
server_name yourdomain.com;
# SSL 配置
ssl_certificate /etc/nginx/ssl/yourdomain.crt;
ssl_certificate_key /etc/nginx/ssl/yourdomain.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers EECDH+CHACHA20:EECDH+AES128:EECDH+AES256:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
# 根据需求配置不同的 location
location / {
proxy_pass http://backend_server;
add_header Alt-Svc 'h3=":443"; ma=86400'; # 重复添加 Alt-Svc 头部
}
}
1. QUIC 和 HTTP/3 相关配置项
- listen 443 quic reuseport: 启用 QUIC 协议,并在端口 443 上监听。
- http3 on: 启用 HTTP/3。
- quic_retry on: 启用 QUIC 重试机制。
- quic_gso on: 启用 QUIC 的 GSO(Generic Segmentation Offload)功能。
- quic_host_key: 指定 QUIC 使用的密钥文件路径。
- add_header Alt-Svc: 向客户端传递服务器支持的 HTTP/3 信息。
2. SSL 和 HTTP/2 配置
- ssl_certificate 和 ssl_certificate_key: 指定 SSL 证书和私钥。
- ssl_protocols: 启用 TLSv1.2 和 TLSv1.3。
- http2 on: 启用 HTTP/2。
- ssl_ciphers: 配置使用的加密套件。
三、重启 Nginx
配置完成后,重新加载或重启 Nginx 以使配置生效:
# 检查配置是否正确
sudo nginx -t
# 重启 Nginx
sudo systemctl restart nginx
四、测试是否成功启用 HTTP/3 和 QUIC
可以通过以下网址测试网站是否成功启用了 HTTP/3 和 QUIC:
- HTTP/3 测试:http3check.net
- HTTP/2 测试:tools.keycdn.com/http2-test
本文链接:
/archives/MJdpSAvY
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
薪萤-博客!
喜欢就支持一下吧
打赏
微信
支付宝