Izdanje nginxa 1.17.1 i njs 0.3.3

Dostupno uzvodno izdanje nginx 1.17.1, unutar kojeg se nastavlja razvoj novih mogućnosti (paralelno podržani stabilni grana 1.16 Provode se samo promjene koje se odnose na uklanjanje ozbiljnih grešaka i ranjivosti.

Glavni promjena:

  • Dodana direktiva limit_req_dry_run, koji aktivira način probnog rada, u kojem se ne primjenjuju ograničenja na intenzitet obrade zahtjeva (bez ograničenja brzine), ali nastavlja uzimati u obzir broj zahtjeva koji premašuju ograničenja u zajedničkoj memoriji;
  • Kada koristite direktivu "uzvodno" u bloku postavki "uzvodno".smjesa» za organiziranje uravnoteženja opterećenja s vezanjem klijent-poslužitelj, ako navedete praznu vrijednost ključa, sada je aktiviran jednoobrazni način uravnoteženja (round-robin);
  • Popravljeno rušenje tijeka rada pri korištenju predmemorije u kombinaciji s direktivom "image_filter" i preusmjeravanjem rukovatelja kodom pogreške 415 pomoću direktive "error_page";
  • Popravljeno rušenje tijeka rada koje se dogodilo pri korištenju ugrađenog Perl tumača.

Dodatno, možete napomenuti izdanje njs 0.3.3, JavaScript tumač za nginx web poslužitelj. njs interpreter implementira ECMAScript standarde i omogućuje vam da proširite sposobnost nginxa za obradu zahtjeva pomoću skripti u konfiguraciji. Skripte se mogu koristiti u konfiguracijskoj datoteci za definiranje napredne logike za obradu zahtjeva, generiranje konfiguracije, dinamičko generiranje odgovora, modificiranje zahtjeva/odgovora ili brzo kreiranje zaglavlja za rješavanje problema u web aplikacijama.

Novo izdanje njs-a popravlja probleme uočene tijekom testiranja fuzzinga. Implementirana je globalna varijabla “proces” s parametrima i varijablama okruženja trenutnog procesa (process.pid, process.env.HOME, itd.). Sva ugrađena svojstva i metode mogu se pisati. Dodana implementacija Array.prototype.fill(). Implementirana je podrška za sintaksu predloženu u ECMAScriptu 5 čovjek koji stvara и seter za vezanje svojstva objekta na funkciju, na primjer:

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

Izvor: opennet.ru

Dodajte komentar