Release der Hauptversion , im Rahmen dessen die Entwicklung neuer Möglichkeiten fortgesetzt wird (in der parallel unterstĂŒtzten stabilen Es werden nur Ănderungen vorgenommen, die mit der Behebung schwerwiegender Fehler und SicherheitsanfĂ€lligkeiten zusammenhĂ€ngen.
Haupt- :
- Die Angabe mehrerer Zeilen "Host" ist in
dem Anfrage-Header verboten; - Ein Fehler wurde behoben, bei dem nginx zusÀtzliche Zeilen
"Transfer-Encoding" im Anfrage-Header ignorierte; - Es wurden Korrekturen vorgenommen, die Socket-Lecks bei der Verwendung des HTTP/2-Protokolls verhindern;
- Ein Absturz (segmentation fault) des Worker-Prozesses wurde behoben, der bei der Verwendung von OCSP-Stapling auftrat;
- Es wurden Korrekturen im Modul ngx_http_mp4_module vorgenommen;
- Ein Problem wurde behoben, bei dem bei der Fehlerumleitung mit dem Code 494 durch die Direktive âerror_pageâ eine Antwort mit dem Code 494 anstelle von 400 zurĂŒckgegeben werden konnte;
- Socket-Lecks wurden bei der Verwendung von Unterabfragen im njs-Modul und der Direktive aio behoben.
ZusĂ€tzlich kann vermerkt werden , dem JavaScript-Interpreter fĂŒr den Webserver nginx. Der njs-Interpreter implementiert die ECMAScript-Standards und ermöglicht es, die Möglichkeiten von nginx zur Verarbeitung von Anfragen durch Skripte in der Konfiguration zu erweitern. Skripte können in der Konfigurationsdatei verwendet werden, um eine erweiterte Logik fĂŒr die Verarbeitung von Anfragen, die Erstellung von Konfigurationen, die dynamische Antwortgenerierung, die Modifikation von Anfragen/Antworten oder das schnelle Erstellen von Platzhaltern zur Lösung von Problemen in Webanwendungen zu definieren.
In der neuen Version wurde im njs-Modul die UnterstĂŒtzung des Modus abgetrennter Anfragen in r.subrequest() hinzugefĂŒgt. Antworten auf abgetrennte Unterabfragen werden ignoriert. Im Gegensatz zu normalen Unterabfragen kann eine abgetrennte Unterabfrage innerhalb eines Variablenhandlers erstellt werden. AuĂerdem:
- Die Promises-API wurde fĂŒr das Modul "fs" hinzugefĂŒgt;
- Im Modul "fs" wurden die Funktionen access(), symlink(), unlink(),
realpath() und Ă€hnliche hinzugefĂŒgt; - Speichereffiziente regulĂ€re Arrays wurden eingefĂŒhrt;
- Es wurden Verbesserungen im Lexer vorgenommen;
- Ein Fehler im Abgleich nativer Funktionen in RĂŒckverfolgungen wurde behoben.
RĂŒckverfolgungen; - Callback-Aufrufe im Modul "fs" wurden korrigiert;
- Es wurden Korrekturen in Object.getOwnPropertySymbols() vorgenommen;
- Ein Ăberlauf des dynamischen Speichers in njs_json_append_string() wurde behoben;
- Es wurde eine Korrektur in encodeURI() und decodeURI() gemÀà der Spezifikation vorgenommen;
- Eine Korrektur in Number.prototype.toPrecision() wurde vorgenommen;
- Eine Korrektur der Verarbeitung des Leerzeichens als Argument in JSON.stringify() wurde vorgenommen;
- Eine Korrektur in JSON.stringify() mit den Objekten Number() und String() wurde vorgenommen;
- Die UngĂŒltigkeit von Unicode-Zeichen in JSON.stringify() wurde gemĂ€Ă
der Spezifikation sichergestellt; - Ein Fehler wurde beim Import nicht einheimischer Module behoben;
- Ein Fehler in njs.dump() mit einer Date()-Instanz im Container wurde behoben.
Quelle: opennet.ru
