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 修复,确保在高并发和多协议环境中运行更加稳定。

相关推荐
HIT_Weston11 小时前
93、【Ubuntu】【Hugo】搭建私人博客:面包屑(一)
linux·运维·ubuntu
cuijiecheng201811 小时前
Linux下Beyond Compare过期
linux·运维·服务器
喵叔哟11 小时前
20.部署与运维
运维·docker·容器·.net
HIT_Weston11 小时前
92、【Ubuntu】【Hugo】搭建私人博客:侧边导航栏(六)
linux·运维·ubuntu
CodeAllen嵌入式11 小时前
Windows 11 本地安装 WSL 支持 Ubuntu 24.04 完整指南
linux·运维·ubuntu
今晚务必早点睡14 小时前
系统通信方式实战详解:HTTP、RPC、MQ、WebSocket 各用在什么场景?(附 SDK 示例)
websocket·http·rpc
松涛和鸣15 小时前
49、智能电源箱项目技术栈解析
服务器·c语言·开发语言·http·html·php
RisunJan15 小时前
Linux命令-ipcs命令(报告进程间通信(IPC)设施状态的实用工具)
linux·运维·服务器
HABuo16 小时前
【Linux进程(四)】进程切换&环境变量深入剖析
linux·运维·服务器·c语言·c++·ubuntu·centos