在宝塔面板中设置Nginx开启QUIC(HTTP3)支持

在宝塔面板中设置Nginx开启QUIC(HTTP3)支持

QUIC(HTTP/3)相比于 HTTP/2 的主要优势在于更快的连接建立和更低的延迟。QUIC 使用用户数据报协议(UDP),减少了连接和传输延迟,同时具备更好的拥塞控制和丢包恢复机制。此外,它支持多路复用,避免了 HTTP/2 中的头阻塞问题。很多网站选择开启 HTTP/3,是为了提升用户体验,尤其是在高延迟或不稳定的网络环境中。

VPS厂商防火墙开启443 UDP协议

图片[1]|在宝塔面板中设置Nginx开启QUIC(HTTP3)支持|TechTink技术微匠

宝塔面板放行443 UDP协议

图片[2]|在宝塔面板中设置Nginx开启QUIC(HTTP3)支持|TechTink技术微匠

开启TLS1.3

宝塔面板—高级设置—TLS设置

图片[3]|在宝塔面板中设置Nginx开启QUIC(HTTP3)支持|TechTink技术微匠

升级Nginx版本

升级Nginx版本大于等于 1.25 版本。

图片[4]|在宝塔面板中设置Nginx开启QUIC(HTTP3)支持|TechTink技术微匠

站点配置

在所有的站点域名中,只需要有一个 server 域中配置 reuseport 选项即可

listen 443 quic; 
add_header Alt-Svc 'quic=":443"; h3=":443"; h3-29=":443"; h3-27=":443";h3-25=":443"; h3-T050=":443"; h3-Q050=":443";h3-Q049=":443";h3-Q048=":443"; h3-Q046=":443"; h3-Q043=":443"';

改为:
listen 443 quic reuseport; 
add_header Alt-Svc 'h3=":443"; ma=86400,h3-29=":443"; ma=86400,h3-Q050=":443"; ma=86400,quic=":443"; ma=86400; v="46,43"';

修改SSL版本

ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;

改为:
ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384';

建议添加:

ssl_early_data on;

该指令可以在 server 块中,例如:加在 ssl_session_timeout 指令下方。

如服务器的性能较强,CPU 与内存足够,还可以在 http 块(即宝塔面板>Nginx>设置>配置修改)中添加以下指令:

http3_max_concurrent_streams 256;
http3_stream_buffer_size 128k;

http3_max_concurrent_streams 这个指令是用来限制在单个 HTTP/3 连接上可以同时处理的最大流数量。默认值 128 意味着一个单一的 HTTP/3 连接可以同时承载最多 128 个双向数据流。

http3_stream_buffer_size 指令用于设置 HTTP/3 流的缓冲区大小。这个缓冲区用于存储待发送或已接收但尚未处理的数据。其默认值为 64k,增加缓冲区大小可以减少 I/O 操作的频率,可能对性能有所提升,特别是在处理大块数据传输时。

检测网址

成果展示

图片[5]|在宝塔面板中设置Nginx开启QUIC(HTTP3)支持|TechTink技术微匠
© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片快捷回复

    暂无评论内容