แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™ nginx 1.17.0 แž“แžทแž„ njs 0.3.2

แžŽแŸ‚แž“แžถแŸ† แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แžŠแŸ†แž”แžผแž„แž“แŸƒแžŸแžถแžแžถแž’แŸ†แžแŸ’แž˜แžธแŸ” nginx 1.17แžŠแŸ‚แž›แž€แŸ’แž“แžปแž„แž“แŸ„แŸ‡แž€แžถแžšแžขแž—แžทแžœแžŒแŸ’แžแž“แŸแžŸแž˜แžแŸ’แžแž—แžถแž–แžแŸ’แž˜แžธแž“แžนแž„แž”แž“แŸ’แž (แž˜แžถแž“แžŸแŸ’แžแŸแžšแž—แžถแž–แžŸแŸ’แžšแž”แž‚แŸ’แž“แžถแŸ” แžŸแžถแžแžถ 1.16 แž˜แžถแž“แžแŸ‚แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแžŠแŸ‚แž›แž‘แžถแž€แŸ‹แž‘แž„แž“แžนแž„แž€แžถแžšแž›แžปแž”แž”แŸ†แž”แžถแžแŸ‹แž€แŸ†แž แžปแžŸแž’แŸ’แž„แž“แŸ‹แž’แŸ’แž„แžš แž“แžทแž„แž—แžถแž–แž„แžถแž™แžšแž„แž‚แŸ’แžšแŸ„แŸ‡แž”แŸ‰แžปแžŽแŸ’แžŽแŸ„แŸ‡แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แž’แŸ’แžœแžพแžกแžพแž„)แŸ”

แžŸแŸ†แžแžถแž“แŸ‹ แž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžš:

  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แžขแžแŸแžšแž“แŸ…แž€แŸ’แž“แžปแž„แž€แžถแžšแžŽแŸ‚แž“แžถแŸ† "limit_rate" แž“แžทแž„ "limit_rate_after" แž€แŸแžŠแžผแž…แž‡แžถแž“แŸ…แž€แŸ’แž“แžปแž„ "proxy_upload_rate" แž“แžทแž„
    "proxy_download_rate" แž“แŸƒแž˜แŸ‰แžผแžŒแžปแž›แžŸแŸ’แž‘แŸ’แžšแžธแž˜;

  • แžแž˜แŸ’แžšแžผแžœแž€แžถแžšแž€แžพแž“แžกแžพแž„แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แŸ†แžŽแŸ‚แžŠแŸ‚แž›แž”แžถแž“แž‚แžถแŸ†แž‘แŸ’แžšแžขแž”แŸ’แž”แž”แžšแž˜แžถแž“แŸƒ OpenSSL - 0.9.8;
  • แžแžถแž˜แž›แŸ†แž“แžถแŸ†แžŠแžพแž˜ แž˜แŸ‰แžผแžŒแžปแž› ngx_http_postpone_filter_module แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแžแžกแžพแž„แŸ”
  • แž”แž‰แŸ’แž แžถแž‡แžถแž˜แžฝแž™แž€แžถแžšแžŽแŸ‚แž“แžถแŸ† "แžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›" แž˜แžทแž“แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž“แŸ…แž€แŸ’แž“แžปแž„แž”แŸ’แž›แžปแž€ "แž”แŸ’แžšแžŸแžทแž“แž”แžพ" แž“แžทแž„ "limit_except" แžแŸ’แžšแžผแžœแž”แžถแž“แžŠแŸ„แŸ‡แžŸแŸ’แžšแžถแž™แŸ”
  • แž‡แžฝแžŸแž‡แžปแž›แž€แŸ†แž แžปแžŸแž“แŸ…แž–แŸแž›แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžแž˜แŸ’แž›แŸƒแž”แŸƒ "แž‡แžฝแžš"แŸ”

แž€แŸ’แž“แžปแž„แž…แŸ†แžŽแŸ„แž˜แž€แžถแžšแž€แŸ‚แž›แž˜แŸ’แžขแžŸแŸ†แžแžถแž“แŸ‹แŸ—แžŠแŸ‚แž›แžšแŸ†แž–แžนแž„แž‘แžปแž€แž“แŸ…แž€แŸ’แž“แžปแž„แžŸแžถแžแžถ 1.17 แž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแž–แžทแž’แžธแž€แžถแžšแžแŸ’แžšแžผแžœแž”แžถแž“แž›แžพแž€แžกแžพแž„ QUIC แž“แžทแž„ HTTP/3.

แž›แžพแžŸแž–แžธแž“แŸแŸ‡แž‘แŸ€แžแžœแžถแžขแžถแž…แžแŸ’แžšแžผแžœแž”แžถแž“แž€แžแŸ‹แžŸแž˜แŸ’แž‚แžถแž›แŸ‹ แž€แžถแžšแžŠแŸ„แŸ‡แž›แŸ‚แž„ njs 0.3.2 แžŠแŸ‚แž›แž‡แžถแžขแŸ’แž“แž€แž”แž€แž”แŸ’แžšแŸ‚ JavaScript แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸแž”แžŽแŸ’แžแžถแž‰ nginx แŸ” แžขแŸ’แž“แž€แž”แž€แž”แŸ’แžšแŸ‚ njs แžขแž“แžปแžœแžแŸ’แžแžŸแŸ’แžแž„แŸ‹แžŠแžถแžš ECMAScript แž“แžทแž„แžขแž“แžปแž‰แŸ’แž‰แžถแžแžฑแŸ’แž™แžขแŸ’แž“แž€แž–แž„แŸ’แžšแžธแž€แžŸแž˜แžแŸ’แžแž—แžถแž–แžšแž”แžŸแŸ‹ nginx แžŠแžพแž˜แŸ’แž”แžธแžŠแŸ†แžŽแžพแžšแž€แžถแžšแžŸแŸ†แžŽแžพแžŠแŸ„แž™แž”แŸ’แžšแžพแžŸแŸ’แž‚แŸ’แžšแžธแž”แž“แŸ…แž€แŸ’แž“แžปแž„แž€แžถแžšแž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’แŸ” แžŸแŸ’แž‚แŸ’แžšแžธแž”แžขแžถแž…แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžพแž“แŸ…แž€แŸ’แž“แžปแž„แžฏแž€แžŸแžถแžšแž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’แžŠแžพแž˜แŸ’แž”แžธแž€แŸ†แžŽแžแŸ‹แžแž€แŸ’แž€แžœแžทแž‡แŸ’แž‡แžถแž€แž˜แŸ’แžšแžทแžแžแŸ’แž–แžŸแŸ‹แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžŸแŸ†แžŽแžพ แž”แž„แŸ’แž€แžพแžแž€แžถแžšแž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’ แž”แž„แŸ’แž€แžพแžแž€แžถแžšแž†แŸ’แž›แžพแž™แžแž”แž‡แžถแž›แž€แŸ’แžแžŽแŸˆแžแžถแž˜แžœแž“แŸ’แž แž€แŸ‚แž”แŸ’แžšแŸ‚แžŸแŸ†แžŽแžพ/แž€แžถแžšแž†แŸ’แž›แžพแž™แžแž” แžฌแž”แž„แŸ’แž€แžพแž stubs แž™แŸ‰แžถแž„แž†แžถแž”แŸ‹แžšแž แŸแžŸแžŠแžพแž˜แŸ’แž”แžธแžŠแŸ„แŸ‡แžŸแŸ’แžšแžถแž™แž”แž‰แŸ’แž แžถแž“แŸ…แž€แŸ’แž“แžปแž„แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž‚แŸแž แž‘แŸ†แž–แŸแžšแŸ”

แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แžแŸ’แž˜แžธแž“แŸƒ njs แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž‚แŸ†แžšแžผแžแŸ’แžŸแŸ‚แžขแž€แŸ’แžŸแžšแžŠแŸ‚แž›แž”แžถแž“แž€แŸ†แžŽแžแŸ‹แž“แŸ…แž€แŸ’แž“แžปแž„แž€แžถแžšแž”แž‰แŸ’แž‡แžถแž€แŸ‹ ECMAScript แž†แŸ’แž“แžถแŸ† แŸขแŸ แŸกแŸฅ. แž‚แŸ†แžšแžผโ€‹แžแŸ’แžŸแŸ‚แžขแž€แŸ’แžŸแžšโ€‹แž‚แžบโ€‹แž‡แžถโ€‹แž–แŸ’แž™แž‰แŸ’แž‡แž“แŸˆโ€‹แžแŸ’แžŸแŸ‚โ€‹แžขแž€แŸ’แžŸแžšโ€‹แžŠแŸ‚แž›โ€‹แžขแž“แžปแž‰แŸ’แž‰แžถแžโ€‹แžฑแŸ’แž™โ€‹แž˜แžถแž“โ€‹แž€แž“แŸ’แžŸแŸ„แž˜โ€‹แž“แŸ…โ€‹แž€แŸ’แž“แžปแž„โ€‹แž‡แžฝแžšแŸ” แž€แž“แŸ’แžŸแŸ„แž˜แžแŸ’แžšแžผแžœแž”แžถแž“แž€แŸ†แžŽแžแŸ‹แž“แŸ…แž€แŸ’แž“แžปแž„แž”แŸ’แž›แžปแž€ ${...} แžŠแŸ‚แž›แžŠแžถแž€แŸ‹แž“แŸ…แžแžถแž„แž€แŸ’แž“แžปแž„แž”แž“แŸ’แž‘แžถแžแŸ‹ แžŠแŸ‚แž›แžขแžถแž…แžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›แž‘แžถแŸ†แž„แžขแžแŸแžšแž”แžปแž‚แŸ’แž‚แž› (${name}) แž“แžทแž„แž€แž“แŸ’แžŸแŸ„แž˜ (${5 + a + b}))แŸ” แž›แžพแžŸแž–แžธแž“แŸแŸ‡แž‘แŸ€แž แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แŸ’แžšแžปแž˜แžŠแŸ‚แž›แž˜แžถแž“แžˆแŸ’แž˜แŸ„แŸ‡แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž‘แŸ…แžœแžแŸ’แžแžป RegExp แžŠแŸ‚แž›แžขแž“แžปแž‰แŸ’แž‰แžถแžแžฑแŸ’แž™แžขแŸ’แž“แž€แž—แŸ’แž‡แžถแž”แŸ‹แž•แŸ’แž“แŸ‚แž€แž“แŸƒแžแŸ’แžŸแŸ‚แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž‚แŸ’แž“แžถแžŠแŸ„แž™แž€แž“แŸ’แžŸแŸ„แž˜แž’แž˜แŸ’แž˜แžแžถแžŠแŸ‚แž›แž˜แžถแž“แžˆแŸ’แž˜แŸ„แŸ‡แž‡แžถแž€แŸ‹แž›แžถแž€แŸ‹แž‡แŸ†แž“แžฝแžŸแžฑแŸ’แž™แž›แŸแžแžŸแŸŠแŸแžšแžธแž“แŸƒแž€แžถแžšแž•แŸ’แž‚แžผแž•แŸ’แž‚แž„แŸ” แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž€แžŸแžถแž„แž‡แžถแž˜แžฝแž™แž”แžŽแŸ’แžŽแžถแž›แŸแž™ GNU Readline แŸ”

แž”แŸ’แžšแž—แž–: opennet.ru

แž”แž“แŸ’แžแŸ‚แž˜แž˜แžแžทแž™แŸ„แž”แž›แŸ‹