Nginx近日稳定版发布了1.26.0,从该版本开始,默认已支持HTTP/3,本文通过添加wlnmp一键安装包的源,来安装nginx1.26.0。
注意事项:
1、HTTP/3是基于QUIC(UDP)协议的HTTP协议版本。
2、使用HTTP/3需要开启UDP 443端口。
3、仅需要在一个server字段中使用listen 443 quic reuseport;
4、添加add_header Alt-Svc 'h3=":443"; ma=86400';响应头。
5、从1.26.0开始http2的配置不要使用listen 443 ssl http2;了,已改成listen 443 ssl;加http2 on;方式,见下面配置示例。
本文基于RockyLinux8安装nginx,截至本文发文,nginx版本为1.26.0
添加wlnmp源
curl -fsSL "https://sh.wlnmp.com/wlnmp.sh" | bash
|---|----------------------------------------------------| | 1 | curl -fsSL "https://sh.wlnmp.com/wlnmp.sh" | bash |
安装epel源
yum install epel-release -y
|---|-----------------------------| | 1 | yum install epel-release -y |
安装nginx
yum install wnginx -y
|---|-----------------------| | 1 | yum install wnginx -y |
nginx配置
以下是一个基础的HTTP/3配置示例,结合实际情况配置证书、server_name、root路径等。可结合实际情况修改wlnmp一键安装包默认提供的demo.conf文件。
vi /usr/local/nginx/conf/vhost/demo.conf
|---|------------------------------------------| | 1 | vi /usr/local/nginx/conf/vhost/demo.conf |
server { listen 443 quic reuseport; listen 443 ssl; http2 on; ...... ssl_certificate xxx.pem; ssl_certificate_key xxx.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; add_header Alt-Svc 'h3=":443"; ma=86400'; ...... }
|----------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 1 2 3 4 5 6 7 8 9 10 11 12 | server { listen 443 quic reuseport; listen 443 ssl; http2 on; ...... ssl_certificate xxx.pem; ssl_certificate_key xxx.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; add_header Alt-Svc 'h3=":443"; ma=86400'; ...... } |
注意:必须放行udp 443端口,检查服务器防火墙,机房防火墙,云端防火墙。
http3检测的网站
https://http3check.net/
https://http3test.com/