nginx 1.17.0 рдЖрдгрд┐ njs 0.3.2 рдЪреЗ рдкреНрд░рдХрд╛рд╢рди

рд╕рд╛рджрд░ рдХрд░рдгрд╛рд░рд╛ рдирд╡реАрди рдореБрдЦреНрдп рд╢рд╛рдЦреЗрдЪреЗ рдкрд╣рд┐рд▓реЗ рдкреНрд░рдХрд╛рд╢рди nginx 1.17, рдЬреНрдпрд╛рдордзреНрдпреЗ рдирд╡реАрди рдХреНрд╖рдорддрд╛рдВрдЪрд╛ рд╡рд┐рдХрд╛рд╕ рдЪрд╛рд▓реВ рд░рд╛рд╣реАрд▓ (рд╕рдорд╛рдВрддрд░ рд╕рдорд░реНрдерд┐рдд рд╕реНрдерд┐рд░ рд╢рд╛рдЦрд╛ 1.16 рдХреЗрд╡рд│ рдЧрдВрднреАрд░ рддреНрд░реБрдЯреА рдЖрдгрд┐ рднреЗрджреНрдпрддрд╛ рджреВрд░ рдХрд░рдгреНрдпрд╛рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдмрджрд▓ рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд).

рдореБрдЦреНрдп рдмрджрд▓ рдХрд░рд╛:

  • "limit_rate" рдЖрдгрд┐ "limit_rate_after" рдирд┐рд░реНрджреЗрд╢рд╛рдВрдордзреНрдпреЗ, рддрд╕реЗрдЪ "proxy_upload_rate" рдордзреНрдпреЗ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕рд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ
    рдкреНрд░рд╡рд╛рд╣ рдореЙрдбреНрдпреВрд▓рдЪрд╛ "рдкреНрд░реЙрдХреНрд╕реА_рдбрд╛рдЙрдирд▓реЛрдб_рд░реЗрдЯ";

  • OpenSSL рдЪреНрдпрд╛ рдХрд┐рдорд╛рди рд╕рдорд░реНрдерд┐рдд рдЖрд╡реГрддреНрддреАрд╕рд╛рдареА рд╡рд╛рдвреАрд╡ рдЖрд╡рд╢реНрдпрдХрддрд╛ - 0.9.8;
  • рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░, ngx_http_postpone_filter_module рдореЙрдбреНрдпреВрд▓ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЬрд╛рддреЗ;
  • "рдЬрд░" рдЖрдгрд┐ "рдорд░реНрдпрд╛рджрд╛_рд╡рдЧрд│рддрд╛" рдмреНрд▓реЙрдХрдордзреНрдпреЗ рдХрд╛рдо рдХрд░рдд рдирд╕рд▓реЗрд▓реНрдпрд╛ "рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рд╛" рдирд┐рд░реНрджреЗрд╢рд╛рддреАрд▓ рд╕рдорд╕реНрдпрд╛рдВрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ;
  • рдмрд╛рдЗрдЯ рдореВрд▓реНрдпрд╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛рдирд╛ рдмрдЧрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХреЗрд▓реЗ "рд╢реНрд░реЗрдгреА".

рд╢рд╛рдЦрд╛ 1.17 рдордзреНрдпреЗ рдЕрдкреЗрдХреНрд╖рд┐рдд рд▓рдХреНрд╖рдгреАрдп рд╕реБрдзрд╛рд░рдгрд╛рдВрдкреИрдХреА, рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕рдорд░реНрдердирд╛рдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдирдореВрдж рдХреЗрд▓реА рдЖрд╣реЗ QUIC рдЖрдгрд┐ HTTP/3.

рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдШреЗрддрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ рд░реАрд▓рд┐рдЭ njs 0.3.2, nginx рд╡реЗрдм рд╕рд░реНрд╡реНрд╣рд░рд╕рд╛рдареА JavaScript рджреБрднрд╛рд╖реА. njs рдЗрдВрдЯрд░рдкреНрд░рд┐рдЯрд░ ECMAScript рдорд╛рдирдХреЗ рд▓рд╛рдЧреВ рдХрд░рддреЛ рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдордзреАрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд╛рдкрд░реВрди рд╡рд┐рдирдВрддреНрдпрд╛рдВрдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рдЪреА nginx рдХреНрд╖рдорддрд╛ рд╡рд╛рдврд╡рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЛ. рд╡рд┐рдирдВрддреНрдпрд╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЧрддрд┐рдорд╛рдирдкрдгреЗ рдкреНрд░рддрд┐рд╕рд╛рдж рдирд┐рд░реНрдорд╛рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рд╡рд┐рдирдВрддреА/рдкреНрд░рддрд┐рд╕рд╛рджрд╛рдд рдмрджрд▓ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХрд┐рдВрд╡рд╛ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрдордзреАрд▓ рд╕рдорд╕реНрдпрд╛рдВрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкрдЯрдХрди рд╕реНрдЯрдм рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреНрд░рдЧрдд рддрд░реНрдХрд╢рд╛рд╕реНрддреНрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдЗрд▓рдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдК рд╢рдХрддрд╛рдд.

njs рдЪреЗ рдирд╡реАрди рдкреНрд░рдХрд╛рд╢рди рд╕реНрдкреЗрд╕рд┐рдлрд┐рдХреЗрд╢рдирдордзреНрдпреЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕рд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрддреЗ ECMAScript 6. рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╣реЗ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓рд┐рдЯрд░рд▓ рдЖрд╣реЗрдд рдЬреЗ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдЗрдирд▓рд╛рдЗрдирд┐рдВрдЧрд▓рд╛ рдЕрдиреБрдорддреА рджреЗрддрд╛рдд. рдЕрднрд┐рд╡реНрдпрдХреНрддреА рдПрдХрд╛ рдУрд│реАрдЪреНрдпрд╛ рдЖрдд рдареЗрд╡рд▓реЗрд▓реНрдпрд╛ ${...} рдмреНрд▓реЙрдХрдордзреНрдпреЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд, рдЬреНрдпрд╛рдордзреНрдпреЗ рд╡реИрдпрдХреНрддрд┐рдХ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕ (${name}) рдЖрдгрд┐ рдЕрднрд┐рд╡реНрдпрдХреНрддреА (${5 + a + b})) рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЕрд╕реВ рд╢рдХрддрд╛рдд. рдпрд╛рд╢рд┐рд╡рд╛рдп, RegExp рдСрдмреНрдЬреЗрдХреНрдЯрдордзреНрдпреЗ рдирд╛рдорд╛рдВрдХрд┐рдд рдЧрдЯрд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддреАрджреНрд╡рд╛рд░реЗ рдЬреБрд│рд▓реЗрд▓реНрдпрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧрдЪреЗ рднрд╛рдЧ рдЬреБрд│рдгреНрдпрд╛рдВрдЪреНрдпрд╛ рдЕрдиреБрдХреНрд░рдорд╛рдВрдХрд╛рдВрдРрд╡рдЬреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд╛рд╡рд╛рдВрд╕рд╣ рд╕рдВрдмрджреНрдз рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ. GNU рд░реАрдбрд▓рд╛рдЗрди рд▓рд╛рдпрдмреНрд░рд░реАрд╕рд╣ рдмрд┐рд▓реНрдбрд┐рдВрдЧрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛