Veröffentlichung von nginx 1.19.2 und njs 0.4.3

Erstellt Release der Hauptversion nginx 1.19.2, im Rahmen dessen die Entwicklung neuer Möglichkeiten fortgesetzt wird (in der parallel unterstützten stabilen Zweig 1.18 Es werden nur Änderungen vorgenommen, die mit der Behebung schwerwiegender Fehler und Sicherheitsanfälligkeiten zusammenhängen.

Haupt- Änderungen:

  • Keepalive-Verbindungen schließen jetzt, bevor alle verfügbaren Verbindungen erschöpft sind, und entsprechende Warnungen werden im Protokoll angezeigt.
  • Bei Verwendung der Chunked-Übertragung wurde eine Optimierung für das Lesen des Anfragekörpers des Clients implementiert.
  • Es wurde ein Speicherleck behoben, das bei Verwendung der Direktive „ssl_ocsp“ auftrat.
  • Das im letzten Release aufgetretene Problem mit der Protokollierung der Meldung „zero size buf in output“ beim Rückgeben einer fehlerhaften Antwort durch den FastCGI-Server wurde behoben.
  • Ein Absturz des Arbeitsspeichers wurde behoben, der auftrat, wenn unterschiedliche Größen von large_client_header_buffers in verschiedenen virtuellen Servern gesetzt wurden.
  • Ein Problem mit der fehlerhaften Beendigung von SSL-Verbindungen und der Protokollierung der Warnung „SSL_shutdown() failed (SSL: … bad write retry)“ wurde gelöst.
  • Fehler in den Modulen ngx_http_slice_module und ngx_http_xslt_filter_module wurden behoben.

Gleichzeitig hat stattgefunden Release njs 0.4.3, einem Interpreteur für die Programmiersprache JavaScript für den Webserver nginx. Der Interpreteur njs setzt ECMAScript-Standards um und ermöglicht es, die Fähigkeiten von nginx zur Bearbeitung von Anfragen durch Skripte in der Konfiguration zu erweitern. Skripte können in der Konfigurationsdatei verwendet werden, um erweiterte Logik zur Bearbeitung von Anfragen zu definieren, die Konfiguration zu erstellen, dynamische Antworten zu generieren, Anfragen/Antworten zu modifizieren oder schnell Stubs zur Problemlösung in Web-Anwendungen zu erstellen. In der neuen Version:

  • Das Query String-Modul mit Funktionen zum Parsen von HTTP-Query-Strings wurde hinzugefügt.
  • Die Funktionen fs.mkdir() und fs.rmdir() unterstützen jetzt die rekursive Erstellung und Löschung von Verzeichnissen.
  • Ein UTF-8-Dekodierer wurde hinzugefügt.
  • Support für TextEncoder und TextDecoder zur Umwandlung zwischen Zeichenkodierungen und deren Unicode-Darstellungen wurde implementiert. (z.B.: „(new TextDecoder()).decode(new Uint8Array([206,177,206,178]))“.)

Quelle: opennet.ru

60GB SSD 8Gb DDR4