Veröffentlichung von Nginx 1.19.3 und NJS 0.4.4

Gebildet Master-Branch-Release nginx 1.19.3, innerhalb dessen die Entwicklung neuer Funktionen fortgesetzt wird (in einem parallel unterstützten Stall). Zweig 1.18 Es werden nur Änderungen vorgenommen, die sich auf die Beseitigung schwerwiegender Fehler und Schwachstellen beziehen.

Haupt- Veränderungen:

  • Das Modul ist im Lieferumfang enthalten ngx_stream_set_module, wodurch Sie einer Variablen einen Wert zuweisen können

    server {
    höre 12345;
    setze $true 1;
    }

  • Richtlinie hinzugefügt Proxy_Cookie_Flags um Flags für Cookies in Proxy-Verbindungen anzugeben. Um beispielsweise das Flag „httponly“ zu Cookie „one“ und die Flags „nosecure“ und „samesite=strict“ für alle anderen Cookies hinzuzufügen, können Sie die folgende Konstruktion verwenden:

    Proxy_cookie_flags eins httponly;
    Proxy_cookie_flags ~ Nosecure samesite=strict;

  • Ähnliche Richtlinie userid_flags zum Hinzufügen von Flags zu Cookie ist auch für das Modul ngx_http_userid implementiert.

Gleichzeitig fand statt Ausgabe njs 0.4.4, ein JavaScript-Interpreter für den Nginx-Webserver. Der njs-Interpreter implementiert ECMAScript-Standards und ermöglicht es Ihnen, die Fähigkeit von nginx zur Verarbeitung von Anforderungen mithilfe von Skripten in der Konfiguration zu erweitern. Skripte können in einer Konfigurationsdatei verwendet werden, um erweiterte Logik für die Verarbeitung von Anfragen, die Generierung einer Konfiguration, die dynamische Generierung einer Antwort, die Änderung einer Anfrage/Antwort oder die schnelle Erstellung von Stubs zur Lösung von Problemen in Webanwendungen zu definieren. In der neuen Version:

  • Unterstützung für die visuelle Trennung von Ziffern in Zahlen hinzugefügt (z. B. „1_000“).
  • 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% implementiert: from(), of().
  • DataView-Objekt implementiert.

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

  • Implementiertes Pufferobjekt.

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

  • Unterstützung für Pufferobjekte zu den Methoden „crypto“ und „fs“ hinzugefügt und sichergestellt, dass fs.readFile(), Hash.prototype.digest() und Hmac.prototype.digest() eine Instanz des Pufferobjekts zurückgeben.
  • Der TextDecoder.prototype.decode()-Methode wurde ArrayBuffer-Unterstützung hinzugefügt.

Source: opennet.ru

Kommentar hinzufügen