nginx 1.19.3 နှင့် njs 0.4.4 ကို ဖြန့်ချိသည်။

ဖွဲ့စည်းခဲ့သည်။ ရေဆန်လွှတ် nginx 1.19.3စွမ်းရည်အသစ်များ ဆက်လက်ဖွံ့ဖြိုးတိုးတက်စေသည့်အတောအတွင်း (အပြိုင် ပံ့ပိုးပေးထားသည့် တည်ငြိမ်သည်။ ဌာနခွဲ ၁.၁၈ ကြီးလေးသော အမှားအယွင်းများနှင့် အားနည်းချက်များကို ဖယ်ရှားရေးနှင့် ပတ်သက်သော အပြောင်းအလဲများကိုသာ ပြုလုပ်ပါသည်။)

အဓိက အပြောင်းအလဲများ:

  • Module ပါဝင်ပါသည်။ ngx_stream_set_moduleကိန်းရှင်တစ်ခုသို့ တန်ဖိုးတစ်ခု သတ်မှတ်ရန် ခွင့်ပြုသည်။

    ဆာဗာ {
    12345 ကိုနားထောငျ;
    $true 1 ကိုသတ်မှတ်ပါ။
    }

  • ညွန်ကြားချက် ထည့်သွင်းထားသည်။ proxy_cookie_flags proxyed ချိတ်ဆက်မှုများရှိ Cookies အတွက် အလံများ သတ်မှတ်ရန်။ ဥပမာအားဖြင့်၊ Cookie “one” တွင် “httponly” အလံနှင့် အခြား Cookies အားလုံးအတွက် “nosecure” နှင့် “samesite=strict” အလံများထည့်ရန်၊ သင်သည် အောက်ပါတည်ဆောက်မှုကို အသုံးပြုနိုင်သည်။

    proxy_cookie_flags one httponly;
    proxy_cookie_flags ~ nosecure samesite=တင်းကျပ်သော၊

  • အလားတူ ညွှန်ကြားချက် userid_flags Cookie တွင် အလံများထည့်ခြင်းအတွက် ngx_http_userid module အတွက်လည်း လုပ်ဆောင်ပါသည်။

တစ်ပြိုင်နက်တည်း နေရာယူခဲ့သည်။ ထုတ်ဝေ njs ၀၁၃nginx ဝဘ်ဆာဗာအတွက် JavaScript စကားပြန်။ njs စကားပြန်သည် ECMAScript စံနှုန်းများကို အကောင်အထည်ဖော်ပြီး ဖွဲ့စည်းမှုတွင် scripts များကို အသုံးပြု၍ တောင်းဆိုမှုများကို လုပ်ဆောင်ရန် nginx ၏စွမ်းရည်ကို ချဲ့ထွင်ခွင့်ပြုသည်။ တောင်းဆိုမှုများကို လုပ်ဆောင်ရန်အတွက် အဆင့်မြင့် လော့ဂျစ်ကို သတ်မှတ်ရန်၊ ဖွဲ့စည်းမှုပုံစံတစ်ခု ဖန်တီးခြင်း၊ တုံ့ပြန်မှုတစ်ခု ဖန်တီးခြင်း၊ တောင်းဆိုမှု/တုံ့ပြန်မှုကို မွမ်းမံပြင်ဆင်ခြင်း၊ သို့မဟုတ် ဝဘ်အက်ပ်လီကေးရှင်းများတွင် ပြဿနာများကို ဖြေရှင်းရန် မျဉ်းခွဲများ အမြန်ဖန်တီးရန် Script များကို အသုံးပြုနိုင်သည်။ ဗားရှင်းအသစ်တွင်-

  • ဂဏန်းများကို ဂဏန်းများ၏ အမြင်အာရုံ ပိုင်းခြားခြင်းအတွက် ပံ့ပိုးမှု ပေါင်းထည့်ထားသည် (ဥပမာ၊ “1_000”)။
  • %TypedArray% အတွက် ပျောက်နေသောနည်းလမ်းများကို အကောင်အထည်ဖော်ခဲ့သည်- every(), filter(), find(), findIndex(), forEach(), include(), indexOf(), lastIndexOf(), map(), reduce(), reduceRight(), reverse(), some()။
  • %TypedArray%: from(), of() အတွက် ပျောက်နေသောနည်းလမ်းများကို အကောင်အထည်ဖော်ခဲ့သည်။
  • DataView object ကို အကောင်အထည်ဖော်ခဲ့သည်။

    :>> (DataView(buf.buffer)).getUint16()
    : 32974

  • Buffer object ကို အကောင်အထည်ဖော်ခဲ့သည်။

    : >> var buf = Buffer.from([0x80,206,177,206,178])
    : သတ်မှတ်မထားပါ။
    :>> buf.slice(1).toString()
    : 'αβ'
    :>> buf.toString('base64')
    : 'gM6xzrI='

  • "crypto" နှင့် "fs" နည်းလမ်းများသို့ Buffer object ပံ့ပိုးမှုကို ပေါင်းထည့်ခဲ့ပြီး fs.readFile(), Hash.prototype.digest() နှင့် Hmac.prototype.digest() တို့သည် Buffer object ၏ ဥပမာကို ပြန်ပေးကြောင်း သေချာစေပါသည်။
  • ArrayBuffer ပံ့ပိုးမှုအား TextDecoder.prototype.decode() နည်းလမ်းသို့ ထည့်သွင်းထားပါသည်။

source: opennet.ru

မှတ်ချက် Add