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

相关推荐
代码游侠19 分钟前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Harvey90331 分钟前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
珠海西格电力科技2 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
释怀不想释怀2 小时前
Linux环境变量
linux·运维·服务器
zzzsde2 小时前
【Linux】进程(4):进程优先级&&调度队列
linux·运维·服务器
聆风吟º4 小时前
CANN开源项目实战指南:使用oam-tools构建自动化故障诊断与运维可观测性体系
运维·开源·自动化·cann
NPE~4 小时前
自动化工具Drissonpage 保姆级教程(含xpath语法)
运维·后端·爬虫·自动化·网络爬虫·xpath·浏览器自动化
神梦流4 小时前
GE 引擎的内存优化终局:静态生命周期分析指导下的内存分配与复用策略
linux·运维·服务器
Lsir10110_5 小时前
【Linux】进程信号(下半)
linux·运维·服务器
skywalk81635 小时前
unbound dns解析出现问题,寻求解决之道
运维·服务器·dns·unbound