nginx 1.17.9 և njs 0.3.9-ի թողարկում

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

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

  • Արգելվում է մի քանի «Հոսթ» տող նշել
    հարցման վերնագիր;

  • Շտկվել է սխալ, որտեղ nginx-ը անտեսել է լրացուցիչ տողերը
    «Փոխանցում-կոդավորում» հարցման վերնագրում;

  • Ուղղումներ են արվել HTTP/2 արձանագրությունն օգտագործելիս վարդակների արտահոսքը կանխելու համար.
  • Աշխատանքային գործընթացում շտկվել է սեգմենտավորման անսարքությունը, որն առաջանում է OCSP stapling-ի օգտագործման ժամանակ.
  • Ուղղումներ են կատարվել ngx_http_mp4_module մոդուլում;
  • Լուծվել է խնդիրը այն դեպքերում, երբ 494 կոդով սխալները վերահղելիս՝ օգտագործելով «error_page» հրահանգը, 494-ի փոխարեն կարող է վերադարձվել 400 կոդով պատասխան;
  • Հաստատված վարդակից արտահոսք njs մոդուլում և aio հրահանգում ենթահարկեր օգտագործելիս:

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

Նոր թողարկումում njs մոդուլն ավելացրել է աջակցություն անջատված հարցման ռեժիմի համար r.subrequest(): Առանձնացված ենթհարցերի պատասխաններն անտեսվում են: Ի տարբերություն սովորական ենթհարցումների՝ անջատված ենթհարցումը կարող է ստեղծվել փոփոխական մշակողի ներսում: Նաև՝

  • Ավելացվել է API-ի խոստումներ «fs» մոդուլի համար;
  • «fs» մոդուլին ավելացվել են access(), symlink(), unlink() ֆունկցիաները:
    realpath() և նմանատիպ;

  • Ներդրվել են սովորական զանգվածներ՝ արդյունավետ հիշողության սպառման առումով;
  • Բարելավումներ են կատարվել lexer-ում;
  • Կատարվել է ուղղում բնիկ ֆունկցիաների քարտեզագրման հետքերով:
    հետքեր;

  • «fs» մոդուլում ֆիքսված հետադարձ զանգեր;
  • Ուղղումներ են կատարվել Object.getOwnPropertySymbols();
  • Ֆիքսված կույտային բուֆերային արտահոսք njs_json_append_string();
  • Ֆիքսված է encodeURI() և decodeURI()՝ ճշգրտմանը համապատասխանելու համար.
  • Ուղղել է Number.prototype.toPrecision();
  • JSON.stringify();
  • Ուղղել է JSON.stringify()-ը Number() և String() օբյեկտներով;
  • JSON.stringify()-ում նախատեսված է Unicode նիշերի փախուստը՝ ըստ
    ճշգրտմամբ;

  • Ուղղում է կատարվել ոչ բնիկ մոդուլների ներմուծմանը.
  • njs.dump()-ում ուղղում է կատարվել Date() օրինակով կոնտեյների մեջ:

Source: opennet.ru

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