新版本 nginx 1.25.5 和 fork FreeNginx 1.26.0

nginx 1.25.5的主分支已经发布,新功能的开发仍在继续。 并行维护的稳定分支 1.24.x 仅包含与消除严重错误和漏洞相关的更改。 未来将在主分支1.25.x的基础上形成稳定分支1.26。 该项目代码是用 C 语言编写的,并在 BSD 许可证下分发。

其中的变化:

  • Stream 模块中添加了对虚拟服务器的支持,其配置是使用 server_name 指令在“server { ... }”块中定义的。服务器 { 服务器名称 ~^(www\.)?(.+)$; proxy_pass www.$2:12345; }
  • 添加了新模块 ngx_stream_pass_module,旨在将接收到的连接直接转发到与 http、stream 和 mail 等模块关联的任何侦听套接字。流{服务器{监听12345 ssl; ssl_证书域.crt; ssl_certificate_key 域.key;通过 127.0.0.1:8000; } }
  • 流模块的listen指令实现了对“deferred”(启用延迟接受)、“accept_filter”(在调用accept函数之前应用传入连接过滤器)和“setfib”(设置路由表)参数的支持。
  • 对于某些架构,已经实现了对确定用于在 CPU 缓存和内存之间传输数据的块大小(缓存行)的支持。
  • 在 Apple Silicon 系统上,添加了对 Homebrew 包管理器的支持。
  • Windows 的交叉编译问题已得到解决。
  • 修复了在 QUIC 协议中使用 0-RTT 模式时导致连接关闭的错误。

此外,我们还可以注意到 FreeNginx 1.26.0 项目稳定版本的发布,该项目开发了 Nginx 的一个分支。该分支由 Nginx 的主要开发人员之一 Maxim Dunin 开发。 FreeNginx 定位为一个非盈利项目,提供 Nginx 代码库的开发,无需企业干预。 1.26.0 版本被标记为稳定版本,包含 Nginx 1.25 主线分支版本中的更改和修复。除此之外,FreeNginx 1.26.0 还包括对 HTTP/3 协议的实验性支持、针对 DoS 攻击的改进以及与异步 I/O 处理相关的修复。

与此同时,njs 0.8.4 发布,这是一个用于 nginx Web 服务器的 JavaScript 解释器。 njs 解释器实现了 ECMAScript 标准,并允许您使用配置中的脚本扩展 nginx 处理请求的能力。脚本可以在配置文件中使用来定义高级逻辑,用于处理请求、生成配置、动态生成响应、修改请求/响应或快速创建存根以解决 Web 应用程序中的问题。新版本中:CLI中添加了对QuickJS JavaScript引擎的支持;添加了设置服务器标头的功能;实现了对通过 js_set 设置的变量重复的检查。

来源: opennet.ru

添加评论