nginx 1.21.4 ΠΈΠ·Π΄Π°Π½ΠΈΠ΅

ИзлСзСна Π΅ Π³Π»Π°Π²Π½Π°Ρ‚Π° Π³Ρ€Π°Π½ΠΊΠ° Π½Π° nginx 1.21.4, Π²ΠΎ Ρ‡ΠΈΠΈ Ρ€Π°ΠΌΠΊΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΡƒΠ²Π° Ρ€Π°Π·Π²ΠΎΡ˜ΠΎΡ‚ Π½Π° Π½ΠΎΠ²ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Π²ΠΎ ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ ΠΏΠΎΠ΄Π΄Ρ€ΠΆΠ°Π½Π°Ρ‚Π° стабилна Π³Ρ€Π°Π½ΠΊΠ° 1.20, сС ΠΏΡ€Π°Π²Π°Ρ‚ само ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ²Ρ€Π·Π°Π½ΠΈ со Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡ€Π°ΡšΠ΅ Π½Π° сСриозни Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈ пропусти).

Π“Π»Π°Π²Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ:

  • ΠŸΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° установки HTTP/2-соСдинСний с использованиСм Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ NPN (Next Protocol Negotiation) вмСсто ALPN;
  • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ SSL-соСдинСний ΠΏΡ€ΠΈ использовании ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ALPN, Ссли Π² процСссС согласования соСдинСний Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π½ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»;
  • Π’ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°Ρ‚Π° β€žsendfile_max_chunkβ€œ, стандардната врСдност Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½Π΅Ρ‚Π° Π½Π° 2 ΠΌΠ΅Π³Π°Π±Π°Ρ˜Ρ‚ΠΈ;
  • Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ stream Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° proxy_half_close, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ проксируСмого соСдинСния TCP Π½Π° ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· сторон (Β«TCP half-closeΒ»);
  • Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ stream Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° ssl_alpn для опрСдСлСния списка ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² ALPN (h2, http/1.1) ΠΈ пСрСмСнная $ssl_alpn_protocol, ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‰Π°Ρ согласованный с ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ALPN;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²Ρ‹Π·ΠΎΠ²Π° SSL_sendfile() ΠΏΡ€ΠΈ использовании OpenSSL 3.0;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° Β«mp4_start_key_frameΒ» Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ ngx_http_mp4_module для вСщания Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠ°, начиная с ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°.
  • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Π° установка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ $content_length ΠΏΡ€ΠΈ использовании chunked transfer encoding;
  • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Π° ошибка ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ соСдинСния ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹ ΠΎΡ‚ проксируСмого бэкСнда;
  • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ Π»ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ Β«errorΒ» вмСсто Β«infoΒ» ΠΏΡ€ΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Ρ… Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°Ρ… ΠΎΡ‚ бэкСндов;
  • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ ошибки зависания запросов ΠΏΡ€ΠΈ использовании HTTP/2 ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ aio_write.

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€