OpenResty® Scalable Web Platform by Extending NGINX with Lua

New! OpenResty 1.21.4.1 is now released!
New! Test::Nginx 0.30 is now released!
New! New blog post Configure HTTP basic auth in OpenResty Edge is published.
New! New blog post How to use custom dynamic metrics in OpenResty Edge is published.
New! New blog post Limit Request Rate by Custom Keys in OpenResty Edge is published.

OpenResty 1.21.4.1 Released

Johnny Wang , 18 May 2022 (created 18 May 2022)

We are happy to announce the new formal release, 1.21.4.1, of the OpenResty web platform based on NGINX and LuaJIT.

Download this version here.

The (portable) source code distribution, the Win32/Win64 binary distributions, and the pre-built binary Linux packages for Ubuntu, Debian, Fedora, CentOS, RHEL, Alpine, OpenSUSE, Amazon Linux, Rocky Linux, and Oracle Linux are provided on this Download page.

Version Highlights

  • Based on a very recent mainline NGINX core 1.21.4.
  • LuaJIT
    • Now we can fully JIT compile Lua loops for iterating through Lua hash tables, i.e., for k, v in pairs(tb) do … end and other related forms. This work sponsored by OpenResty INC.
    • Implemented a new string.buffer API.
    • Fixed the bug that Lua table iteration terminates early.
    • Many fixes imported from Mike Pall's upstream https://github.com/luajit/luajit repository.
  • Implemented the new ngx.run_worker_thread API to run Lua function in a seperated worker thread.
  • Added lua_ssl_conf_command directive for setting arbitrary OpenSSL configuration parameter particularly the TLSv1.3 ciphersuites.
  • Added ssl_client_hello_by_lua* api for controlling the NGINX downstream SSL handshake dynamically with Lua.
  • Added support for BoringSSL.
  • Fixed the bug that posted event handler is called after the event is freed.
  • Fixed pending ngx.pipe until timeout caused by pipe that forgot to close in child process.
  • lua-resty-redis module
    • Added a surface to support redis module.
  • Upgraded OpenSSL to 1.1.1n for Win32/Win64.

Full Change logs

Complete change logs since the last (formal) release, 1.19.9.1, can be browsed in the page Change Log for 1.21.4.x.

Testing

We have run extensive testing on our Amazon EC2 test cluster and ensured that all the components (including the Nginx core) play well together. The latest test report can always be found here:

https://qa.openresty.org/

We also always run our OpenResty Edge commercial software based on the latest open source version of OpenResty in our own global CDN network (dubbed "mini CDN") powering our openresty.org and openresty.com websites. See https://openresty.com/ for more details.

Community Support

See the Community Page.

Commercial Support

Commercial technical support and real-time noninvasive online monitoring and profiling solution is provided through the official OpenResty XRay product.

Feedback

Feedback on this release is more than welcome. Feel free to create new GitHub issues or send emails to one of our mailing lists.