Uitgave van nginx 1.17.1 en njs 0.3.3

Beschikbaar stroomopwaartse vrijgave nginx 1.17.1, waarbinnen de ontwikkeling van nieuwe capaciteiten doorgaat (in een parallel ondersteunde stabiele situatie). tak 1.16 Er worden alleen wijzigingen aangebracht die verband houden met het elimineren van ernstige fouten en kwetsbaarheden.

De belangrijkste veranderingen:

  • Richtlijn toegevoegd limit_req_dry_run, die de proefuitvoeringsmodus activeert, waarin geen beperkingen worden toegepast op de intensiteit van de verwerking van verzoeken (zonder snelheidslimiet), maar rekening blijft houden met het aantal verzoeken dat de limieten in het gedeelde geheugen overschrijdt;
  • Bij gebruik van de richtlijn “upstream” in het instellingenblok “upstream”.hachee» om taakverdeling met client-server-binding te organiseren: als u een lege sleutelwaarde opgeeft, wordt de uniforme verdelingsmodus (round-robin) nu geactiveerd;
  • Een workflowcrash opgelost bij gebruik van de cache in combinatie met de richtlijn "image_filter" en het omleiden van de 415-foutcodehandler met behulp van de richtlijn "error_page";
  • Er is een workflowcrash opgelost die optrad bij gebruik van de ingebouwde Perl-interpreter.

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

De nieuwe release van njs lost problemen op die zijn geïdentificeerd tijdens fuzzing-tests. Implementeerde een globale variabele “process” met parameters en omgevingsvariabelen van het huidige proces (process.pid, process.env.HOME, etc.). Er kan naar alle ingebouwde eigenschappen en methoden worden geschreven. Implementatie van Array.prototype.fill() toegevoegd. Ondersteuning voor de in ECMAScript 5 voorgestelde syntaxis is geïmplementeerd doorzetter и setter om een ​​objecteigenschap aan een functie te binden, bijvoorbeeld:

var o = {a:2};
Object.defineProperty(o, 'b', {get:function(){return 2*this.a}});

Bron: opennet.ru

Voeg een reactie