Veröffentlichung von nginx 1.19.3 und njs 0.4.4

Erstellt Hauptzweig-Version nginx 1.19.3, in dessen Rahmen die Entwicklung neuer Funktionen fortgesetzt wird (in der parallel unterstützten stabilen Zweig 1.18 werden nur Änderungen vorgenommen, die mit der Behebung von schwerwiegenden Fehlern und Sicherheitsanfälligkeiten zusammenhängen).

Haupt eingeführt wurde, die im Januar dieses Jahres in den Kernel übernommen wurde. Es betrifft ausschließlich die Version 5.1 und tritt in den meisten Fällen auf Systemen mit Samsung-SSD-Speichern auf, bei denen zur Verschlüsselung Daten mit dm-crypt/LUKS über device-mapper/LVM verwendet werden.:

  • Es wurde ein Modul hinzugefügt ngx_stream_set_module, das es ermöglicht, einem Variablenwert zuzuweisen

    server {
    listen 12345;
    set $true 1;
    }

  • Eine neue Direktive wurde hinzugefügt proxy_cookie_flags zur Angabe von Flags für Cookies in proxied Verbindungen. Zum Beispiel kann man für das Cookie „one“ das Flag „httponly“ hinzufügen, während für alle anderen Cookies die Flags „nosecure“ und „samesite=strict“ verwendet werden können:

    proxy_cookie_flags one httponly;
    proxy_cookie_flags ~ nosecure samesite=strict;

  • Eine ähnliche Direktive userid_flags zum Hinzufügen von Flags zu Cookies wurde ebenfalls für das Modul ngx_http_userid implementiert.

Gleichzeitig statt Veröffentlichung njs 0.4.4, Interpreter für die JavaScript-Sprache für den Webserver nginx. Der njs-Interpreter setzt die ECMAScript-Standards um und erweitert die Möglichkeiten von nginx zur Verarbeitung von Anfragen durch Skripte in der Konfiguration. Skripte können in der Konfigurationsdatei verwendet werden, um erweiterte Logik zur Anfrageverarbeitung zu definieren, die Konfiguration zu erstellen, dynamisch Antworten zu generieren, Anfragen/Antworten zu modifizieren oder schnell Platzhalter zur Problembehebung in Webanwendungen zu erstellen. In der neuen Version:

  • Unterstützung für die visuelle Trennung von Zahlen (z. B. „1_000“) hinzugefügt.
  • Fehlende Methoden für %TypedArray%.prototype implementiert: every(), filter(), find(), findIndex(), forEach(), includes(), indexOf(), lastIndexOf(), map(), reduce(), reduceRight(), reverse(), some().
  • Fehlende Methoden für %TypedArray%: from(), of().
  • Das Objekt DataView wurde implementiert.

    : >> (new DataView(buf.buffer)).getUint16()
    : 32974

  • Das Objekt Buffer wurde implementiert.

    : >> var buf = Buffer.from([0x80,206,177,206,178])
    : undefined
    : >> buf.slice(1).toString()
    : ‘αβ’
    : >> buf.toString(‘base64’)
    : ‘gM6xzrI=’

  • Die Unterstützung für das Buffer-Objekt wurde in die Methoden „crypto“ und „fs“ hinzugefügt, außerdem wird eine Instanz des Buffer-Objekts in fs.readFile(), Hash.prototype.digest() und Hmac.prototype.digest() zurückgegeben.
  • Der Unterstützung von ArrayBuffer wurde in der Methode TextDecoder.prototype.decode() hinzugefügt.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster