The release of the NGINX Unit 1.24 application server has taken place, advancing the solution for running web applications in various programming languages (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js, and Java). Multiple applications in different programming languages can run simultaneously under NGINX Unit, with launch parameters that can be changed dynamically without the need to modify configuration files or restart. The code is written in C and is distributed under the Apache 2.0 license. You can learn more about the features of NGINX Unit in the announcement of the first release.
In the new version:
- Compatibility with Ruby 3.0 has been ensured.
- PHP has been added to the default MIME type list.
- The ability to specify arbitrary TLS connection settings via OpenSSL commands has been provided.
- Support for limiting the processing of static files based on MIME types has been added. For example, to restrict served files to only images and videos, you can specify: { "share": "/www/data", "types": [ "image/*", "video/*" ] }
- The option to apply chroot, block the use of symbolic links, and prevent crossing mount points related to individual requests when serving static files has been implemented. { "share": "/www/data/static/", "chroot": "/www/data/", "follow_symlinks": false, "traverse_mounts": false }
- A loader has been added for automatically overriding the "http" and "websocket" modules in Node.js.
- For Python, the ability to specify multiple "targets" sections in the configuration to define different dispatch schemes for WSGI/ASGI handlers in a single application has been provided. { "applications": { "python-app": { "type": "python", "path": "/www/apps/python-app/", "targets": { "foo": { "module": "foo.wsgi", "callable": "foo" }, "bar": { "module": "bar.wsgi", "callable": "bar" } } } } }
Source: opennet.ru
