Sortie de nginx 1.17.1 et njs 0.3.3

Disponible version en amont nginx 1.17.1, au sein duquel se poursuit le développement de nouvelles capacités (en parallèle soutenu stable branche 1.16 Seules les modifications liées à l'élimination des erreurs graves et des vulnérabilités sont apportées.

principal changements:

  • Directive ajoutée limit_req_dry_run, qui active le mode d'essai, dans lequel aucune restriction n'est appliquée sur l'intensité de traitement des requêtes (sans limite de débit), mais continue de prendre en compte le nombre de requêtes dépassant les limites de la mémoire partagée ;
  • Lors de l'utilisation de la directive « upstream » dans le bloc de paramètres « upstream »hachage» pour organiser l'équilibrage de charge avec liaison client-serveur, si vous spécifiez une valeur de clé vide, le mode d'équilibrage uniforme (round-robin) est désormais activé ;
  • Correction d'un crash de workflow lors de l'utilisation du cache en combinaison avec la directive "image_filter" et de la redirection du gestionnaire de code d'erreur 415 à l'aide de la directive "error_page" ;
  • Correction d'un crash de flux de travail survenu lors de l'utilisation de l'interpréteur Perl intégré.

De plus, on peut noter question njs 0.3.3, un interpréteur JavaScript pour le serveur Web nginx. L'interpréteur njs implémente les normes ECMAScript et vous permet d'étendre la capacité de nginx à traiter les requêtes à l'aide de scripts dans la configuration. Les scripts peuvent être utilisés dans un fichier de configuration pour définir une logique avancée pour traiter les demandes, générer une configuration, générer dynamiquement une réponse, modifier une demande/réponse ou créer rapidement des stubs pour résoudre des problèmes dans les applications Web.

La nouvelle version de njs corrige les problèmes identifiés lors des tests de fuzzing. Implémentation d'une variable globale « process » avec les paramètres et variables d'environnement du processus en cours (process.pid, process.env.HOME, etc.). Toutes les propriétés et méthodes intégrées peuvent être écrites. Ajout de l'implémentation de Array.prototype.fill(). La prise en charge de la syntaxe proposée dans ECMAScript 5 a été implémentée getter и setter pour lier une propriété d'objet à une fonction, par exemple :

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

Source: opennet.ru

Ajouter un commentaire