Sortie de nginx 1.17.9 et njs 0.3.9

Formé publication de la branche principale nginx 1.17.9, dans le cadre duquel le développement de nouvelles fonctionnalités se poursuit (dans la version stable maintenue en parallÚle branche 1.16 seules des modifications liées à la correction de bogues graves et de vulnérabilités sont apportées).

Principales modifications:

  • Il est interdit de spĂ©cifier plusieurs lignes « Host » dans
    l'en-tĂȘte de la requĂȘte ;
  • Correction d'un bogue oĂč nginx ignorait les lignes supplĂ©mentaires
    « Transfer-Encoding » dans l'en-tĂȘte de la requĂȘte ;
  • Des corrections ont Ă©tĂ© apportĂ©es pour Ă©viter les fuites de sockets lors de l'utilisation du protocole HTTP/2 ;
  • Correction d'un plantage (segmentation fault) du processus de travail se produisant lors de l'utilisation de OCSP stapling ;
  • Corrections apportĂ©es au module ngx_http_mp4_module ;
  • RĂ©solution d'un problĂšme dans les cas oĂč une redirection d'erreur avec le code 494 via la directive 'error_page' pouvait renvoyer une rĂ©ponse avec le code 494 au lieu de 400 ;
  • Évitement des fuites de sockets lors de l'utilisation de sous-requĂȘtes dans le module njs et de la directive aio.

Il convient Ă©galement de noter version njs 0.3.9, l'interprĂ©teur de JavaScript pour le serveur web nginx. L'interprĂ©teur njs met en Ɠuvre les normes ECMAScript et permet d'Ă©tendre les capacitĂ©s de nginx en traitant les requĂȘtes avec des scripts dans la configuration. Les scripts peuvent ĂȘtre utilisĂ©s dans le fichier de configuration pour dĂ©finir une logique de traitement des requĂȘtes Ă©tendue, gĂ©nĂ©rer dynamiquement des rĂ©ponses, modifier les requĂȘtes/rĂ©ponses ou crĂ©er rapidement des maquettes pour rĂ©soudre des problĂšmes dans les applications web.

La nouvelle version du module njs ​​ajoute le support du mode des requĂȘtes dĂ©tachĂ©es dans r.subrequest(). Les rĂ©ponses aux sous-requĂȘtes dĂ©tachĂ©es sont ignorĂ©es. Contrairement aux sous-requĂȘtes normales, une sous-requĂȘte dĂ©tachĂ©e peut ĂȘtre créée Ă  l'intĂ©rieur d'un gestionnaire de variables. De plus :

  • Ajout d'une API Promises pour le module « fs » ;
  • Des fonctions access(), symlink(), unlink(),
    realpath() et similaires ont été ajoutées au module « fs » ;
  • Des tableaux ordinaires efficaces en termes de consommation de mĂ©moire ont Ă©tĂ© introduits ;
  • Des amĂ©liorations ont Ă©tĂ© apportĂ©es au lexer ;
  • Correction du mappage des fonctions natives dans les traces inverses (backtraces).
    dans les traces ;
  • Les appels de rappel ont Ă©tĂ© corrigĂ©s dans le module « fs » ;
  • Des corrections ont Ă©tĂ© apportĂ©es Ă  Object.getOwnPropertySymbols();
  • Correction d'un dĂ©bordement de mĂ©moire dynamique dans njs_json_append_string();
  • Correction de encodeURI() et decodeURI() conformĂ©ment Ă  la spĂ©cification ;
  • Correction de Number.prototype.toPrecision();
  • Correction du traitement de l'argument espace dans JSON.stringify();
  • Correction apportĂ©e Ă  JSON.stringify() avec des objets Number() et String();
  • Échappement des caractĂšres Unicode assurĂ© dans JSON.stringify() conformĂ©ment
    à la spécification;
  • Correction apportĂ©e Ă  l'importation de modules non natifs;
  • Correction apportĂ©e Ă  njs.dump() avec une instance de Date() dans le conteneur.

Source : opennet.ru

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster