выпуск сервера приложений , в рамках которого развивается решение для обеспечения запуска web-приложений на различных языках программирования (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js и Java). Под управлением NGINX Unit может одновременно выполняться несколько приложений на разных языках программирования, параметры запуска которых можно изменять динамически без необходимости правки файлов конфигурации и перезапуска. Код написан на языке Си и под лицензией Apache 2.0. С особенностями NGINX Unit можно познакомиться в первого выпуска.
В новой версии:
- Реализован режим изоляции «» для ограничения доступа приложения только к определённой части файловой системы. Для смены видимого для приложения корня ФС применяется вызов pivot_root(), который в отличие от небезопасного системного вызова chroot() не просто смещает корень ФС, а использует изоляцию на уровне пространства имён, аналогичную той, что используется в контейнерах. Более того, помимо непосредственно указанного каталога приложения, Unit также автоматически монтирует в изолированное дерево ФС все специфичные языковые зависимости (работает только для ограниченного числа языков).
{
«type»: «python 2.7»,
«path»: «/»,
«home»: «/venv/»,
«module»: «wsgi»,
«isolation»: {
«rootfs»: «/var/app/sandbox/»
}
} - Возможность указания в конфигурации нескольких схем вызова обработчиков при помощи новой секции ««. Указанная возможность позволяет упростить настройку смешанных схем адресации, когда, например, большая часть запросов обрабатывается через index.php независимо от запрошенного URI, а интерфейс администратора напрямую приводят к вызову скриптов. Ранее подобные настройки производились через определения двух приложений, а теперь можно обойтись одним. Например, вместо:
{
«wp_index»: {
«type»: «php»,
«user»: «wp_user»,
«group»: «wp_user»,
«root»: «/path/to/wordpress/»,
«script»: «index.php»
},«wp_direct»: {
«type»: «php»,
«user»: «wp_user»,
«group»: «wp_user»,
«root»: «/path/to/wordpress/»
}
}можно указать
{
«wp»: {
«type»: «php»,
«user»: «wp_user»,
«group»: «wp_user»,«targets»: {
«index»: {
«root»: «/path/to/wordpress/»,
«script»: «index.php»
},«direct»: {
«root»: «/path/to/wordpress/»
}
}
}
} - Добавлена поддержка символов в форме «%xx» в опциях сопоставления «uri» и «arguments», а также в опции «pass».
Источник: opennet.ru
