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

相关推荐
qq_371802112 小时前
Ubuntu Linux中安装WorkBuddy
linux·运维·服务器·ubuntu
逃逸线LOF3 小时前
服务网关Gateway
java·运维·gateway
分布式存储与RustFS4 小时前
OpenSearch 的索引快照别只留本地:用 repository-s3 存进 RustFS
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
瑞克-桑切斯4 小时前
docker Harbor 单机部署手册
大数据·运维·elasticsearch·docker·容器
奶茶树4 小时前
【Linux】环境开发工具(vim,gcc,g++,Makefile)
linux·运维·vim
机 _ 长5 小时前
05 智算运维|8 张卡怎么才算「捆成一张」:NCCL 实测与拓扑
运维·人工智能·算法·智算运维
andxe6 小时前
工业级 PoE 交换机选型指南:破解边缘部署四大核心难题
运维·网络·安全·光通信·交换机
Decay__6 小时前
14_MySQL 高可用与容灾架构 —— MGR / InnoDB Cluster / Keepalived+VIP / 双主 / 读写分离 / 两地三中心
运维·数据库·sql·mysql·架构
木子欢儿8 小时前
国内 macOS/Linux 安装 rust
linux·运维·服务器·macos·rust