Release of nginx 1.17.9 and njs 0.3.9

Created release of the main branch nginx 1.17.9, within which the development of new features continues (in the parallel stable branch branch 1.16 only changes related to fixing critical bugs and vulnerabilities are made).

Key changes:

  • The specification of multiple 'Host' strings in
    the request header is prohibited;
  • Fixed a bug where nginx ignored additional 'Transfer-Encoding' lines in the request header;
    Corrections have been made to prevent socket leaks when using HTTP/2 protocol;
  • Fixed a crash (segmentation fault) that occurred when using OCSP stapling;
  • Corrections have been made in the ngx_http_mp4_module;
  • Resolved an issue where an error redirect with code 494 using the 'error_page' directive could return a response with code 494 instead of 400;
  • Socket leaks have been eliminated when using subqueries in the njs module and the aio directive.
  • njs 0.3.9

Additionally, it can be noted release The new release of the njs module adds support for detached request mode in r.subrequest(). Responses to detached subrequests are ignored. Unlike regular subrequests, a detached subrequest can be created inside a variable handler. Also,, a JavaScript language interpreter for the nginx web server. The njs interpreter implements ECMAScript standards and allows extending nginx capabilities for request handling using scripts in configuration. Scripts can be used in the configuration file to define advanced request handling logic, generate configurations, dynamically create responses, modify requests/responses, or quickly create stubs for troubleshooting web applications.

Added Promises API for the 'fs' module;

  • Functions access(), symlink(), unlink(),
  • realpath() and similar have been added to the 'fs' module;
    Efficient memory usage regular arrays have been introduced;
  • Improvements have been made to the lexer;
  • A fix has been made for native function mapping in backtraces.
  • traces;
    Fixed callback calls in the 'fs' module;
  • Corrections have been made in Object.getOwnPropertySymbols();
  • Fixed dynamic memory buffer overflow in njs_json_append_string();
  • Corrected encodeURI() and decodeURI() according to specifications;
  • Fixed Number.prototype.toPrecision();
  • Fixed space argument handling in JSON.stringify();
  • Fixed JSON.stringify() with Number() and String() objects;
  • Unicode character escaping in JSON.stringify() is ensured according to
  • the specifications;
    Fixed import of non-native modules;
  • Fixed njs.dump() with Date() instance in the container.
  • Release of DragonFly BSD 5.8 operating system

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster