Vrijgave van nginx 1.17.9 en njs 0.3.9

Gevormd stroomopwaartse vrijgave nginx 1.17.9, waarbinnen de ontwikkeling van nieuwe capaciteiten doorgaat (in een parallel ondersteunde stabiele situatie). tak 1.16 alleen wijzigingen met betrekking tot het elimineren van ernstige fouten en kwetsbaarheden worden aangebracht).

De belangrijkste veranderingen:

  • Het is verboden om meerdere “Host”-regels op te geven
    verzoekkop;

  • Een bug opgelost waarbij nginx extra regels negeerde
    "Transfer-Encoding" in de verzoekheader;

  • Er zijn oplossingen aangebracht om socketlekken te voorkomen bij gebruik van het HTTP/2-protocol;
  • Een segmentatiefout in het werkproces opgelost die optreedt bij het gebruik van OCSP-nieten;
  • Er zijn correcties aangebracht in de module ngx_http_mp4_module;
  • Er is een probleem opgelost waarbij bij het omleiden van fouten met code 494 met behulp van de 'error_page'-richtlijn een antwoord met code 494 kon worden geretourneerd in plaats van 400;
  • Socketlekken opgelost bij gebruik van subquery's in de njs-module en de aio-richtlijn.

Bovendien kan worden opgemerkt uitgifte njs 0.3.9, een JavaScript-interpreter voor de nginx-webserver. De njs-interpreter implementeert ECMAScript-standaarden en stelt u in staat de mogelijkheid van nginx uit te breiden om verzoeken te verwerken met behulp van scripts in de configuratie. Scripts kunnen in een configuratiebestand worden gebruikt om geavanceerde logica te definiëren voor het verwerken van verzoeken, het genereren van een configuratie, het dynamisch genereren van een antwoord, het wijzigen van een verzoek/antwoord of het snel maken van stubs om problemen in webapplicaties op te lossen.

In de nieuwe release heeft de njs-module ondersteuning toegevoegd voor de vrijstaande aanvraagmodus in r.subrequest(). Antwoorden op losgemaakte subquery's worden genegeerd. In tegenstelling tot reguliere subquery's kan er binnen een variabelenhandler een vrijstaande subquery worden gemaakt. Ook:

  • API-beloften toegevoegd voor de "fs"-module;
  • De functies access(), symlink(), unlink(), zijn toegevoegd aan de “fs”-module.
    realpath() en dergelijke;

  • Er zijn gewone arrays geïntroduceerd die efficiënt zijn in termen van geheugengebruik;
  • Er zijn verbeteringen aangebracht in Lexer;
  • Er is een oplossing aangebracht voor het in kaart brengen van native functies in backtraces.
    sporen;

  • Vaste terugbeloproepen in de “fs”-module;
  • Er zijn correcties aangebracht in Object.getOwnPropertySymbols();
  • Vaste heapbufferoverloop in njs_json_append_string();
  • Vaste codeURI() en decodeURI() om aan de specificatie te voldoen;
  • Er is een probleem opgelost met Number.prototype.toPrecision();
  • Probleem opgelost met het ruimteargument in JSON.stringify();
  • Een oplossing gemaakt voor JSON.stringify() met Number() en String() objecten;
  • Voorzien van ontsnapping van Unicode-tekens in JSON.stringify() volgens
    met specificatie;

  • Er is een oplossing aangebracht voor het importeren van niet-native modules;
  • Er is een oplossing aangebracht voor njs.dump() met een Date()-instantie in de container.

Bron: opennet.ru

Voeg een reactie