架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

搜索
查看: 1078|回复: 3

[Web] Nginx 基于 QUIC 启用 HTTP/3 协议

[复制链接]
发表于 2024-7-10 17:57:18 | 显示全部楼层 |阅读模式
自 1.25.0 版本以来,Nginx 主分支版本就开始支持 HTTP/3(基于 QUIC 协议),但还是显示实验性功能。

基于 QUIC 协议 HTTP/3 正式发布
https://www.itsvse.com/thread-10330-1-1.html


本文基于 Rocky Linux release 9.3 系统安装         nginx-1.26.1 版本,并同时启用 HTTP/3 协议支持。

建议使用提供 QUIC 支持的 SSL 库来构建 nginx,例如 BoringSSL、 LibreSSL或 QuicTLS。

首先,安装如下依赖包:



如果安装 ninja-build、libunwind-devel 失败,请参考如下:

Rocky Linux 9 找不到包:No match for argument: xxx
https://www.itsvse.com/thread-10789-1-1.html


编译 boringssl

命令如下:

如下图:

QQ截图20240709221428.jpg

编译安装 nginx

命令如下:

备注:boringssl/include 后面需要加上 -x c 参数,并且 ./configure 需要增加 --with-cc=c++(使用 C++ 编译器),否则会报错如下:


./configure: error: SSL modules require the OpenSSL library.
You can either do not enable the modules, or install the OpenSSL library
into the system, or build the OpenSSL library statically from the source
with nginx by using --with-openssl=<path> option.


问题参考:

https://trac.nginx.org/nginx/ticket/2605
https://blog.csdn.net/jaket5219999/article/details/137294001

创建软链接

nginx.conf 配置文件修改如下:

启动 nginx 服务(略),配置 DNS 解析(略),测试如下:

https://http3check.net/?host=https%3A%2F%2Fattachtest.itsvse.com%2F

QQ截图20240710175340.jpg

Https 安全协议版本支持检测工具
https://www.itsvse.com/thread-10688-1-1.html


QQ截图20240710175621.jpg

参考文章:


https://nginx.org/en/docs/quic.html
https://www.kaitaku.xyz/webbuild/nginx-quic2/
https://r2wind.cn/articles/20230526.html
https://www.kjnotes.com/devtools/83

(完)




上一篇:Rocky Linux 9 找不到包:No match for argument: xxx
下一篇:ASP.NET Core 异常 Headers are read-only, response has already started
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2024-7-17 21:10:37 | 显示全部楼层
nginx 编译配置:https://nginx.org/en/docs/configure.html

如果想使用缓存,需要删除 --without-http-cache
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2024-7-18 09:06:39 | 显示全部楼层
对于使用 proxy_pass 可能会遇到的问题,修改如下:


可以有多个add_header指令。当且仅当add_header当前级别上没有定义指令时,这些指令才会从上一个配置级别继承。

也就是说当前作用域如果配置了 add_header 命令,他就不会引用上级的命令,只会使用当前作用域的命令。

参考:https://nginx.org/en/docs/http/ngx_http_headers_module.html

QQ截图20240718090921.jpg
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2024-7-18 09:17:31 | 显示全部楼层
使用 curl 检查测试网站 HTTP/3 支持情况
https://www.itsvse.com/thread-10794-1-1.html
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-10-25 01:45

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表