Veröffentlichung des Anwendungsservers NGINX Unit 1.18.0

Hat stattgefunden Veröffentlichung des Anwendungsservers NGINX Unit 1.18, im Rahmen dessen eine Lösung für den Betrieb von Webanwendungen in verschiedenen Programmiersprachen (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js und Java) entwickelt wird. Unter der Verwaltung von NGINX Unit können gleichzeitig mehrere Anwendungen in verschiedenen Programmiersprachen ausgeführt werden, deren Startparameter dynamisch geändert werden können, ohne die Konfigurationsdateien bearbeiten oder neu starten zu müssen. Der Code ist in C geschrieben und wird verbreitet unter der Lizenz Apache 2.0. Mit den Besonderheiten von NGINX Unit können Sie sich vertraut machen in der Ankündigung der ersten Veröffentlichung.

In der neuen Version:

  • Ein isolierter Modus „rootfs“ wurde implementiert, um den Zugriff der Anwendung nur auf einen bestimmten Teil des Dateisystems zu beschränken. Um den für die Anwendung sichtbaren Wurzel des FS zu ändern, wird der Aufruf pivot_root() verwendet, der im Gegensatz zum unsicheren Systemaufruf chroot() nicht nur das Wurzelverzeichnis des FS verschiebt, sondern Isolierung auf Namespace-Ebene verwendet, ähnlich wie sie in Containern verwendet wird. Darüber hinaus montiert Unit automatisch alle relevanten Sprachabhängigkeiten in den isolierten Datei-Baum, die spezifisch für das angegebene Anwendungsverzeichnis sind (funktioniert nur für eine begrenzte Anzahl von Sprachen).

    {
    „type“: „python 2.7“,
    „path“: „/“,
    „home“: „/venv/“,
    „module“: „wsgi“,
    „isolation“: {
    „rootfs“: „/var/app/sandbox/“
    }
    }

  • Die Möglichkeit, mehrere Handler-Aufrufschemata in der Konfiguration über den neuen Abschnitt „targets“ anzugeben, ermöglicht die Vereinfachung der Einrichtung gemischter Adressierungsschemata, wobei zum Beispiel der Großteil der Anfragen unabhängig von der angeforderten URI über index.php verarbeitet wird, während die Administrationsoberfläche direkt zum Aufruf von Skripten führt. Zuvor wurden solche Einstellungen durch die Definition zweier Anwendungen vorgenommen, jetzt kann man mit einer auskommen. Anstelle von:

    {
    „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/“
    }
    }

    kann man angeben

    {
    „wp“: {
    „type“: „php“,
    „user“: „wp_user“,
    „group“: „wp_user“,

    „targets“: {
    „index“: {
    „root“: „/path/to/wordpress/“,
    „script“: „index.php“
    },

    „direct“: {
    „root“: „/path/to/wordpress/“
    }
    }
    }
    }

  • Unterstützung hinzugefügt für Kodierung von Zeichen in der Form „%xx“ in den Optionen für die Abgleichung „uri“ und „arguments“, sowie in der Option „pass“.

Quelle: opennet.ru

60GB SSD 8Gb DDR4