Nginx Unit 1.27.0 发布


Nginx Unit 是一个动态应用服务器,能够与 Nginx Plus 和 Nginx 开源版并行或独立运行。Nginx Unit 支持 RESTful JSON API,可以在不中断服务的情况下更改配置,并可运行基于多种语言和架构的应用。Nginx Unit 生来就是为满足分布式应用的需求而设计的,可为您的服务网格奠定坚实的基础。 Nginx Unit 1.27.0 正式发布,更新内容如下:

将 HTTP 请求重定向到 HTTPS

自从在 Unit 中加入了 TLS 支持和证书管理,就被要求简化将纯文本 HTTP 请求重定向到启用 TLS 的监听器。现在可以通过配置路由 action 的 location 值来实现这一功能。事实上,现在有一个新的变量, $request_uri,它包含了原始 URI 的路径和查询部分,完整的例子如下:
{
"listeners": {
"*:443": {
"tls": {
"certificate": "example.com"
},
"pass": "routes"
},
"*:80": {
"pass": "routes"
}
 },

"routes": [
{
"match": {
"scheme": "http"
},
"action": {
"return": 301,
"location": "<https://

gt;{host}${request_uri}" } } } 
这种配置使 Unit 能够监听纯文本和启用 TLS 的端口,确保在纯文本端口收到的任何请求都会通知浏览器在启用 TLS 的端口重新提交。

为纯路径 URI 提供可配置的文件名

现在你可以通过为路由 action 指定索引来使用不同的默认文件名。下面提供了一个完整的例子:
"routes": [
{
"match": {
"uri": "/cms/*"
},
"action": {
"share": "/var/cms$uri",
"index": "default.html"
}
},
{
"action": {
"share": "/var/www$uri"
}
}
]

这个配置使 Unit 能够为指向 /cms/* 的纯路径 URI 提供 default.html,为所有其他纯路径的 URI 提供默认的 index.html 文件名。

其他

  • 与 GCC 12 兼容
  • 错误修正:一些 Spring Boot 应用程序无法启动
  • 错误修正:Python 协议的自动检测不正确
  • 错误修正:ECMAScript 模块不能与最近的 Node.js 版本一起使用

平台更新

官方软件包现在可用于以下 Linux 发行版:
  • Fedora 36
  • RHEL 9
  • Ubuntu 22.04
Docker 镜像已经更新,以使用最新的语言版本:
  • Go 1.18
  • PHP 8.1
  • Ruby 3.1
更多详情可查看:https://unit.nginx.org/news/2022/unit-1.27.0-released/

相關推薦

2022-12-19

可为您的服务网格奠定坚实的基础。 Nginx Unit 1.29.0 正式发布,更新内容如下: NGINX JavaScript 集成 NGINX JavaScript(njs)是一个服务器端的 JavaScript 运行时,为超快的初始化进行了优化。njs 最初是为扩展 NGINX 而设计的,它的架构

2023-09-03

可为您的服务网格奠定坚实的基础。 Nginx Unit 1.31.0 正式发布,这是继 5 月份发布 1.30 之后的又一个重要里程碑。此版本中引入 Unit WebAssembly (WASM) 功能,代表了 Unit 功能的重大飞跃。 还带来了显着的新增功能 - 能够发送 response

2022-09-15

Nginx Unit 1.28.0 已正式发布,新版本在可观测性方面进入了一个里程碑: 新版本支持获取有关连接、请求和其他每个应用程序指标的基本信息 上述数据可通过 Nginx Unit 的 RESTful API 获取 除此之外,Nginx Unit 1.28.0

2022-01-21

使用 NGINX 之后,Igor 于 2004 年 10 月 4 日正式对外公开发布 NGINX,并将其开源。 此后长达 7 年的时间里,他独自一人负责 NGINX 的开发和维护工作。在此期间,他编写了数十万行代码,NGINX 提供的功能也不再是仅包含 Web 服

2022-11-04

OceanBase v4.0.0_CE 已经发布,企业级开源分布式数据库 此版本更新内容包括: OceanBase 数据库社区版 V4.0.0.0_CE OceanBase 社区发布 V4.0.0 版本是对分布式数据库系统架构设计的全面升级,定位为 Beta 测试版本,社区会关注用户使用反

2023-12-07

个系统的,并且它是安全且私密的。 Syncthing 1.27.0 现已发布,具体更新内容如下: Bug 修复 #9179 : $XDG_CONFIG_HOME 中的虚假日志文件 #9189:Discovery Returns IP #9208:1.26 中登录屏幕显示错误 Enhancements: #9178 : Unix 上

2022-10-21

今日,我们发布了针对 NGINX Plus、NGINX 开源版、NGINX 企阅版以及 NGINX Ingress Controller 的更新,以应对最近在 NGINX 模块 ngx_http_mp4_module 及 ngx_http_hls_module 中发现的漏洞——这两个模块用于以

2023-08-04

大的变化和修改,代码进行了重构。MySQL 8.0 在 2016-09-12 发布, 重写了 5.7 中解析器的近 50% 的代码。MySQL 将编程语言都统一到 C++,编译器使用最新版本,代码风格采用 Google C++ Style,统一了 300 人的开发团队的代码标准。 目前 M

2023-05-25

展,以满足不同的需求。 近日 nginx 1.25.0 主线版正式发布,该版本有且仅有一项更新内容: 实验性的 HTTP/3 支持 除此之外,真的没有其他任何更新内容了。 更多详情可查看:https://nginx.org/en/CHANGES

2023-04-11

njs 0.7.12 已发布。njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、

2023-02-09

njs 0.7.10 已发布。njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、

2023-03-12

njs 0.7.11 已发布。njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、

2023-09-15

njs 0.8.1 已发布。此版本新增js_periodic指令、为共享词典引入items()方法。 njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较

2022-07-21

njs 0.7.6 已发布,njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、