{"id":183231,"date":"2026-09-02T22:54:19","date_gmt":"2026-09-02T20:54:19","guid":{"rendered":"https:\/\/prohoster.info\/blog\/news\/vypusk-nginx-1-31-5-i-njs-1-0-1"},"modified":"2026-09-02T22:54:22","modified_gmt":"2026-09-02T20:54:22","slug":"nginx-1-31-5-and-njs-1-0-1-released","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/nginx-1-31-5-and-njs-1-0-1-released","title":{"rendered":"Publication de nginx 1.31.5 et njs 1.0.1","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La version principale de nginx 1.31.5 a \u00e9t\u00e9 publi\u00e9e, notamment pour continuer le d\u00e9veloppement de nouvelles fonctionnalit\u00e9s. La branche stable 1.30.x, maintenue en parall\u00e8le, ne re\u00e7oit que des modifications li\u00e9es \u00e0 la correction de graves bogues et vuln\u00e9rabilit\u00e9s. \u00c0 l'avenir, une branche stable 1.32 sera form\u00e9e sur la base de la branche principale 1.31.x. Le code du projet est \u00e9crit en C et est distribu\u00e9 sous la licence BSD.     <\/p>\n<p>Dans cette nouvelle version :  <\/p>\n<ul>\n<li class=\"l\"> Une API Rest a \u00e9t\u00e9 ajout\u00e9e pour la gestion externe, permettant de red\u00e9marrer \u00e0 distance la configuration, d'obtenir des donn\u00e9es sur les param\u00e8tres et de consulter l'\u00e9tat des processus en cours. Pour activer le support de l'API, une option de compilation &#171;&#8212;with-control-api&#187; et un argument de ligne de commande &#171;-l&#187; sont pr\u00e9vus. Il est recommand\u00e9 de lier l'API \u00e0 un socket unix (nginx -l unix:\/path\/to\/sock). L'outil Curl peut \u00eatre utilis\u00e9 pour interagir avec l'API.\n<li class=\"l\"> Ajout de la possibilit\u00e9 d'utiliser une variable commen\u00e7ant par le symbole &#171;$&#187; comme valeur de la directive Location. La valeur de la variable, calcul\u00e9e au moment de l'ex\u00e9cution, d\u00e9termine les conditions d'entr\u00e9e dans le bloc Location. De tels Locations peuvent \u00eatre utilis\u00e9s \u00e0 l'int\u00e9rieur d'autres blocs Location ou contenir eux-m\u00eames des Locations imbriqu\u00e9s.       map $arg_foo $pred {         bar  1;         qux  1;     }     location $pred {         root html;     }\n<li class=\"l\"> Le module ngx_http_json_module a \u00e9t\u00e9 impl\u00e9ment\u00e9, offrant des capacit\u00e9s pour analyser des donn\u00e9es au format JSON, extraire des champs sp\u00e9cifiques de JSON et utiliser ces champs comme variables dans la configuration nginx.\n<li class=\"l\"> Ajout de la directive &#171;client_body_early_read&#187;, dont l'activation entra\u00eene la lecture du corps de la requ\u00eate imm\u00e9diatement apr\u00e8s la r\u00e9ception des en-t\u00eates.    <\/ul>\n<p>La version njs 1.0.1 est \u00e9galement disponible, un module int\u00e9grant l'interpr\u00e9teur JavaScript dans le serveur http nginx. Njs permet d'utiliser des scripts JavaScript dans les fichiers de configuration pour \u00e9tendre les fonctionnalit\u00e9s de nginx. Les scripts peuvent \u00eatre utilis\u00e9s pour d\u00e9finir une logique avanc\u00e9e de traitement des requ\u00eates, g\u00e9n\u00e9rer dynamiquement des r\u00e9ponses, modifier des requ\u00eates\/r\u00e9ponses ou cr\u00e9er rapidement des bouchons pour r\u00e9soudre des probl\u00e8mes dans des applications web. Le code du projet est \u00e9crit en C et est distribu\u00e9 sous la licence BSD.      <\/p>\n<p>Dans la version njs 1.0.1, trois vuln\u00e9rabilit\u00e9s ont \u00e9t\u00e9 corrig\u00e9es : un d\u00e9bordement de tampon dans la fonction xml.exclusiveC14n (CVE-2026-78689), un contournement de la restriction d'acc\u00e8s via js_access (CVE-2026-18329) et un appel \u00e0 l'arr\u00eat d'un processus de travail via des manipulations avec ngx.fetch (CVE-2026-78222).<br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=66201\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 nginx 1.31.5, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439. \u0412 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u0443\u044e \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0443\u044e \u0432\u0435\u0442\u043a\u0443 1.30.x \u0432\u043d\u043e\u0441\u044f\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u044b\u0445 \u043e\u0448\u0438\u0431\u043e\u043a \u0438 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439. \u0412 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u043d\u0430 \u0431\u0430\u0437\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 1.31.x \u0431\u0443\u0434\u0435\u0442 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0442\u043a\u0430 1.32. \u041a\u043e\u0434 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\u0438 \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 BSD. \u0412 \u043d\u043e\u0432\u043e\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435: \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-183231","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 nginx 1.31.5, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Alexander Kovalev\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/nginx-1-31-5-and-njs-1-0-1-released\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a nginx 1.31.5 \u0438 njs 1.0.1 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 nginx 1.31.5, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/nginx-1-31-5-and-njs-1-0-1-released\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-02T20:54:19+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-02T20:54:22+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Publication de nginx 1.31.5 et njs 1.0.1 | ProHoster","description":"La version principale de nginx 1.31.5 a \u00e9t\u00e9 publi\u00e9e, poursuivant le d\u00e9veloppement de nouvelles fonctionnalit\u00e9s.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/nginx-1-31-5-and-njs-1-0-1-released","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a nginx 1.31.5 \u0438 njs 1.0.1 | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 nginx 1.31.5, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/nginx-1-31-5-and-njs-1-0-1-released","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-09-02T20:54:19+00:00","article:modified_time":"2026-09-02T20:54:22+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"183231","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-09-09 10:59:27","updated":"2026-09-09 10:59:27","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/183231","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=183231"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/183231\/revisions"}],"predecessor-version":[{"id":183232,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/183231\/revisions\/183232"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=183231"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=183231"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=183231"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}