nginx 1.29.4 发布:支持 HTTP/2 后端与加密客户端问候(ECH),多项功能优化与修复

2025年12月11日,nginx 官方发布了 1.29.4 mainline 版本。本次更新带来了多项重要特性与修复,包括 HTTP/2 到后端的支持Encrypted Client Hello (ECH) 集成,以及对 SSL、HTTP/2、代理模块的多方改进。以下是本次更新的详细内容:

主要更新内容

  1. 构建信息优化

    • 配置流程确保在执行 nginx -V 时可以正确显示 "built by ..." 信息。
    • 增强 MSVC 与 PCRE2 10.47 的兼容性。
  2. SSL 功能更新与修复

    • 修改了 ngx_ssl_set_client_hello_callback() 接口,优化错误处理流程。
    • 修复了在使用 BoringSSL 时因先前改动导致的构建问题。
    • 避免在 ECH 未配置或不支持的情况下产生警告信息。
    • 增加通过 OpenSSL 的 ECH 共享模式支持,实现加密客户端问候功能。
  3. HTTP/2 改进

    • 扩展了对 NULL 缓冲区及零长度的防护检查,提升稳定性。
    • 禁用了在分块传输编码中使用裸 LF,提升协议安全性与兼容性。
    • 增加上游连接层面的 ALPN 协议协商支持。
  4. 代理模块优化

    • 修复 URI 变更时可能出现的段错误问题。
    • 针对 HTTP/2 协议进行了代理模块重构,新增 HTTP/2 代理模块。
    • 提取 ngx_http_proxy_v2_process_frames() 函数,以及控制帧与跳过函数,以提升代码可维护性。
    • 增加 HTTP/2 代理的缓冲支持与缓存支持,提升后端通信效率。
  5. 主机验证改进

    • 改进了主机头部验证逻辑,并调整了 ngx_http_validate_host() 接口。
  6. QUIC 协议修复

    • 修复 QUIC 握手失败时可能出现的段错误问题,提高稳定性。

版本意义

代码地址:github.com/nginx/nginx

nginx 1.29.4 在功能上进一步完善了对现代协议的支持,尤其是 HTTP/2 后端通信ECH 加密握手 ,提升了安全性与性能。

同时,本次更新对 SSL、HTTP/2、代理及 QUIC 等模块进行了多方优化与 bug 修复,确保在高并发和多协议环境中运行更加稳定。

相关推荐
Doraemomo2 小时前
Linux编程-线程
linux·运维·服务器
Linux-lucky8 小时前
21-Linux学习之旅之HTTPS和安全加固
linux·运维·学习·ubuntu·https
ao-weilai10 小时前
Linux基础:Ext系列文件系统
linux·运维·服务器
小小龙学IT11 小时前
Boost.Beast 深度实战:基于 Asio 的开源 C++ HTTP/WebSocket 协议库
c++·websocket·http
用户9385156350713 小时前
Docker + Nginx + Node.js:从“我的电脑能跑,你的电脑跑不了”到一键部署
后端·nginx·docker
GlobalSign数字证书13 小时前
小企业零运维 TLS 架构设计:证书生命周期管理(CLM)与自动化轮换策略的技术选型
运维·自动化
ryan_99614 小时前
MCP Transport 完整指南:stdio 与 Streamable HTTP 到底怎样传消息
网络·网络协议·http
艾伦_耶格宇15 小时前
【ELK】-4 logstash的搭建及操作
linux·运维·ubuntu·elk
mifengxing16 小时前
文件逻辑结构、物理结构与磁盘空闲存储空间管理
大数据·linux·运维·操作系统·计算机408