OpenResty 1.27.1.1 已经正式发布,这是一个基于 NGINX 和 LuaJIT 的 web 平台。以下是关于此次发布的一些重点信息和更新内容:
下载与安装
- 你可以在此处下载最新版本的 OpenResty。
- 提供了便携式源代码分发、Win32/Win64 二进制分发以及为 Ubuntu、Debian、Fedora、CentOS、RHEL、OpenSUSE、Amazon Linux 预构建的 Linux 二进制包。
版本亮点
Nginx 核心
- 基于最新的主线 nginx 核心 1.27.1。
- 官方预构建包中添加了
http_v3_module
和http_slice_module
。
OpenSSL
- 从版本 1.1.1 升级到 3.0.15。
PCRE
- 从版本 8.45 升级到 10.42。
LuaJIT
- 更新到 2.1-20240815,包含各种优化和错误修复:
- 改进了错误处理和栈溢出管理。
- 增强了跨 32/64 位和确定性字节码生成。
- 在 OpenResty 分支中禁用了哈希计算优化,因为可能存在严重的性能下降问题(CVE-2024-39702)。这个问题仅存在于 OpenResty 分支(agentzh-v2.1)中,上游 LuaJIT 不存在此问题。感谢 Kong Inc. 的 Zhongwei Yao 报告了这个问题。
核心模块更新
- 改进了 keepalive 和 balancer 功能。
- 添加了新的 SSL 相关功能,包括支持客户端验证中的受信任证书。
- 添加了从 TLS 主密钥派生密钥的支持。
- 实现了
ngx_http_lua_ffi_ssl_client_random
和相关函数。
第三方库更新
lua-resty-websocket
升级到 0.12,新增功能包括:- 添加了
send_continue
方法。 - 支持客户端中的自定义
sec-websocket-key
。 - 添加了连接到 unix 套接字的支持。
- 添加了
lua-resty-string
升级到 0.16:- 在 AES GCM 中添加了 AAD 支持。
- 默认情况下,
random.bytes
现在是密码学安全的。
lua-resty-redis
升级到 v0.31,进行了性能优化。lua-cjson
升级到 2.1.0.14,支持 Lua 5.3 和 5.4 的整数。
完整变更日志
- 自上一个正式版本 1.25.3.2 以来的完整变更日志可以在“Change Log for 1.27.1.x”页面浏览。
测试
- 在 Amazon EC2 测试集群上进行了广泛的测试,确保所有组件(包括 Nginx 核心)都能良好协作。最新的测试报告可以在此处找到:测试报告链接。
- 还在自己的全球 CDN 网络(称为“mini CDN”)中运行了基于最新开源版 OpenResty 的 OpenResty Edge 商业软件,为 openresty.org 和 openresty.com 网站提供支持。更多详情请参阅:OpenResty 官网。
社区支持
- 访问社区页面以获取更多社区支持信息。
商业支持
- 通过官方的 OpenResty XRay 产品提供商业技术支持和实时非侵入式在线监控及剖析解决方案。
反馈
- 欢迎对此版本提供反馈。可以通过创建新的 GitHub 问题或向其中一个邮件列表发送电子邮件来提供反馈。