Liberigo de nginx 1.17.1 kaj njs 0.3.3

Disponebla kontraŭflua liberigo nginx 1.17.1, ene de kiu la evoluo de novaj kapabloj daŭras (paralele subtenataj stabilaj branĉo 1.16 Nur ŝanĝoj rilataj al la forigo de gravaj eraroj kaj vundeblecoj estas faritaj.

Ĉefa ŝanĝi:

  • Direktivo aldonita limigi_req_sekigi_kuri, kiu aktivigas la provan reĝimon, en kiu neniuj limigoj estas aplikataj pri la intenseco de peta prilaborado (sen impostolimo), sed daŭre konsideras la nombron da petoj superantaj la limojn en komuna memoro;
  • Kiam vi uzas la "kontraŭfluan" direktivon en la "supren" agorda blokohash» por organizi ŝarĝan ekvilibron kun kliento-servila ligado, se vi specifas malplenan ŝlosilvaloron, la uniforma ekvilibra reĝimo (cirklama) nun estas aktivigita;
  • Riparis laborfluan kraŝon kiam oni uzas la kaŝmemoron en kombinaĵo kun la direktivo "image_filter" kaj alidirektas la 415-eraran kodon-traktilon per la "error_page" direktivo;
  • Korektis laborfluan kraŝon, kiu okazis dum uzado de la enkonstruita Perl-interpretilo.

Aldone, ĝi povas esti notita liberigi njs 0.3.3, JavaScript-interpretisto por la retservilo nginx. La interpretisto njs efektivigas ECMAScript-normojn kaj ebligas al vi vastigi la kapablon de nginx prilabori petojn per skriptoj en la agordo. Manuskriptoj povas esti uzataj en agorda dosiero por difini progresintan logikon por prilabori petojn, generante konfiguracion, dinamike generante respondon, modifante peton/respondon aŭ rapide kreante stumpojn por solvi problemojn en retejo-aplikoj.

La nova eldono de njs solvis problemojn identigitajn dum fuzz-testado. Efektivigis tutmondan variablon "procezo" kun parametroj kaj mediovariabloj de la nuna procezo (process.pid, process.env.HOME, ktp.). Ĉiuj enkonstruitaj propraĵoj kaj metodoj povas esti skribitaj al. Aldonita efektivigo de Array.prototype.fill(). Subteno por la sintakso proponita en ECMAScript 5 estis efektivigita geter и stariganto ligi objektan posedaĵon al funkcio, ekzemple:

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

fonto: opennet.ru

Aldoni komenton