nginx 1.17.1 և njs 0.3.3-ի թողարկում

Հասանելի է հոսանքին հակառակ թողարկում nginx 1.17.1, որի շրջանակներում շարունակվում է նոր հնարավորությունների զարգացումը (զուգահեռաբար աջակցվող կայուն մասնաճյուղ 1.16 Կատարվում են միայն փոփոխություններ՝ կապված լուրջ սխալների և խոցելիության վերացման հետ։

Հիմնական փոփոխություններ:

  • Հրահանգն ավելացված է limit_req_dry_run, որն ակտիվացնում է փորձնական գործարկման ռեժիմը, որի դեպքում հարցումների մշակման ինտենսիվության սահմանափակումներ չեն կիրառվում (առանց արագության սահմանաչափի), սակայն շարունակում է հաշվի առնել ընդհանուր հիշողության սահմանաչափերը գերազանցող հարցումների քանակը.
  • Երբ օգտագործում եք «վերընթաց» հրահանգը «վերև» կարգավորումների բլոկումմանրել» հաճախորդ-սերվեր կապակցմամբ բեռի հավասարակշռումը կազմակերպելու համար, եթե դուք նշում եք դատարկ բանալի արժեքը, այժմ ակտիվացված է հավասարաչափ հավասարակշռման ռեժիմը (կլոր շրջան);
  • Շտկվել է աշխատանքային հոսքի խափանումը, երբ օգտագործում է քեշը «image_filter» հրահանգի հետ համատեղ և վերահղում է 415 սխալի կոդերի մշակիչը՝ օգտագործելով «error_page» հրահանգը.
  • Շտկվել է աշխատանքային հոսքի խափանումը, որը տեղի է ունեցել ներկառուցված Perl թարգմանիչի օգտագործման ժամանակ:

Բացի այդ, կարող եք նշել թողարկում njs 0.3.3, JavaScript թարգմանիչ nginx վեբ սերվերի համար: njs թարգմանիչը ներդրում է ECMAScript ստանդարտները և թույլ է տալիս ընդլայնել nginx-ի կարողությունը՝ մշակելու հարցումները՝ օգտագործելով սկրիպտները կազմաձևում: Սկրիպտները կարող են օգտագործվել կազմաձևման ֆայլում՝ հարցումների մշակման, կոնֆիգուրացիայի առաջացման, պատասխանի դինամիկ ձևավորման, հարցումը/պատասխանը փոփոխելու կամ վեբ հավելվածներում խնդիրներ լուծելու համար արագ կոճղեր ստեղծելու համար առաջադեմ տրամաբանություն սահմանելու համար:

njs-ի նոր թողարկումն ուղղում է fuzzing թեստավորման ընթացքում հայտնաբերված խնդիրները: Իրականացրել է գլոբալ փոփոխական «գործընթաց»՝ ընթացիկ գործընթացի պարամետրերով և շրջակա միջավայրի փոփոխականներով (process.pid, process.env.HOME և այլն): Բոլոր ներկառուցված հատկությունները և մեթոդները կարող են գրվել: Ավելացվեց Array.prototype.fill(): Իրականացվել է ECMAScript 5-ում առաջարկված շարահյուսության աջակցությունը ստացող и դահիճ օբյեկտի հատկությունը ֆունկցիայի հետ կապելու համար, օրինակ՝

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

Source: opennet.ru

Добавить комментарий