Vydání nginx 1.17.9 a njs 0.3.9

Bylo vytvořeno hlavní verze nginx 1.17.9, v jejímž rámci pokračuje rozvoj nových funkcí (souběžně je podporována stabilní verze 1.16 jsou provedeny pouze změny související s odstraněním závažných chyb a zranitelností).

Hlavní změny:

  • Není povoleno uvádět několik řádků „Host“ v
    hlavičce požadavku;
  • Opraveno chyby, kdy nginx ignoroval další řádky
    „Transfer-Encoding“ v hlavičce požadavku;
  • Byly provedeny úpravy, které zabraňují únikům soketů při použití protokolu HTTP/2;
  • Opraveno selhání (segmentation fault) pracovního procesu, ke kterému došlo při používání OCSP stapling;
  • Provedeny úpravy v modulu ngx_http_mp4_module;
  • Vyřešen problém v případech, kdy při přesměrování chyb s kódem 494 pomocí direktivy ‘error_page’ mohl být vrácen odpověď s kódem 494 místo 400;
  • Odstraněny úniky soketů při použití poddotazů v modulu njs a direktivě aio.

Dále lze poznamenat vydání njs 0.3.9, interpret JavaScriptu pro webový server nginx. Interpreter njs implementuje standardy ECMAScript a umožňuje rozšíření funkcí nginx v oblasti zpracování požadavků pomocí skriptů v konfiguraci. Skripty mohou být použity v konfiguračním souboru k určení komplexní logiky zpracování požadavků, k vytváření konfigurace, dynamickému generování odpovědi, modifikaci požadavku/odpovědi nebo rychlému vytváření náhradních řešení při problémech ve webových aplikacích.

V nové verzi modulu njs byla přidána podpora pro režim odpojených požadavků v r.subrequest(). Odpovědi na odpojené poddotazy jsou ignorovány. Na rozdíl od běžných poddotazů může být odpojený poddotaz vytvořen uvnitř handleru proměnné. Také:

  • Bylo přidáno API Promises pro modul „fs“;
  • Do modulu „fs“ byly přidány funkce access(), symlink(), unlink(),
    realpath() a podobné;
  • Byly zavedeny efektivní obyčejné pole z hlediska spotřeby paměti;
  • Prováděny vylepšení v lexeru;
  • Opraveno mapování nativních funkcí v backtracech.
    synchronize;
  • Opraveny callbackové volání v modulu „fs“;
  • Opraveny chyby v Object.getOwnPropertySymbols();
  • Opraveno přetečení vyrovnávací paměti dynamické paměti v njs_json_append_string();
  • Opraveno encodeURI() a decodeURI() v souladu s standardem;
  • Opraveno Number.prototype.toPrecision();
  • Opraveno zpracování argumentu whitespace v JSON.stringify();
  • Opraveno JSON.stringify() s objekty Number() a String();
  • Zajištěno escapování Unicode znaků v JSON.stringify() podle
    standardu;
  • Opraven import cizích modulů;
  • Opraveno njs.dump() s instancí Date() v kontejneru.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster