nginx 1.21.4-āĻāĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻļāĻžāĻ–āĻž āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¨āĻ¤ā§āĻ¨ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯āĻ—ā§āĻ˛āĻŋāĻ° āĻŦāĻŋāĻ•āĻžāĻļ āĻ…āĻŦā§āĻ¯āĻžāĻšāĻ¤ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ (āĻ¸āĻŽāĻžāĻ¨ā§āĻ¤āĻ°āĻžāĻ˛ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§€āĻ˛ āĻļāĻžāĻ–āĻž 1.20-āĻ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ—ā§āĻ°ā§āĻ¤āĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻāĻŦāĻ‚ āĻĻā§āĻ°ā§āĻŦāĻ˛āĻ¤āĻž āĻĻā§‚āĻ° āĻ•āĻ°āĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāĻ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ—ā§āĻ˛āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ)āĨ¤

āĻ…āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž:

  • ALPN āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡ NPN (Next Protocol Negotiation) āĻāĻ•ā§āĻ¸āĻŸā§‡āĻ¨āĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ HTTP/2 āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡;
  • āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻ†āĻ˛ā§‹āĻšāĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻĒā§āĻ°ā§‹āĻŸā§‹āĻ•āĻ˛ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ˛ā§‡ āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ ALPN āĻāĻ•ā§āĻ¸āĻŸā§‡āĻ¨āĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ˛ā§‡ SSL āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻŦāĻ¨ā§āĻ§ āĻĨāĻžāĻ•ā§‡ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°ā§‡;
  • "sendfile_max_chunk" āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻ¨āĻžāĻ¯āĻŧ, āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻŽāĻžāĻ¨ 2 āĻŽā§‡āĻ—āĻžāĻŦāĻžāĻ‡āĻŸā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡;
  • āĻ¸ā§āĻŸā§āĻ°ā§€āĻŽ āĻŽāĻĄāĻŋāĻ‰āĻ˛ā§‡, proxy_half_close āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻŋāĻ•āĻž āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻžāĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋāĻĄ TCP āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ†āĻšāĻ°āĻŖ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ ("TCP āĻ…āĻ°ā§āĻ§-āĻŦāĻ¨ā§āĻ§");
  • āĻ¸ā§āĻŸā§āĻ°ā§€āĻŽ āĻŽāĻĄāĻŋāĻ‰āĻ˛ā§‡, āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ ALPN āĻĒā§āĻ°ā§‹āĻŸā§‹āĻ•āĻ˛ (h2, http/1.1) āĻāĻŦāĻ‚ $ssl_alpn_protocol āĻ­ā§‡āĻ°āĻŋāĻ¯āĻŧā§‡āĻŦāĻ˛ā§‡āĻ° āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ ssl_alpn āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻŋāĻ•āĻž āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻž āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŽā§āĻŽāĻ¤ ALPN āĻĒā§āĻ°ā§‹āĻŸā§‹āĻ•āĻ˛āĻ•ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻŋāĻ¤ āĻ•āĻ°ā§‡;
  • OpenSSL 3.0 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ SSL_sendfile() āĻ•āĻ˛ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡;
  • āĻāĻ•āĻŸāĻŋ āĻ•ā§€ āĻĢā§āĻ°ā§‡āĻŽ āĻĨā§‡āĻ•ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻŽ āĻ¸āĻŽā§āĻĒā§āĻ°āĻšāĻžāĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ ngx_http_mp4_module āĻŽāĻĄāĻŋāĻ‰āĻ˛ā§‡ "mp4_start_key_frame" āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻŋāĻ•āĻž āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ā§ˇ
  • āĻ¸ā§āĻĨāĻŋāĻ° āĻ¸ā§‡āĻŸāĻŋāĻ‚ $content_length āĻ­ā§‡āĻ°āĻŋāĻ¯āĻŧā§‡āĻŦāĻ˛ āĻ¯āĻ–āĻ¨ āĻ–āĻŖā§āĻĄāĻŋāĻ¤ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ¨āĻ•ā§‹āĻĄāĻŋāĻ‚ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡;
  • āĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋāĻĄ āĻŦā§āĻ¯āĻžāĻ•āĻāĻ¨ā§āĻĄ āĻĨā§‡āĻ•ā§‡ āĻ­ā§āĻ˛ āĻĻā§ˆāĻ°ā§āĻ˜ā§āĻ¯ā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĒāĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¸ā§āĻĨāĻŋāĻ° āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻ•ā§āĻ¯āĻžāĻļāĻŋāĻ‚ āĻ¤ā§āĻ°ā§āĻŸāĻŋ;
  • āĻŦā§āĻ¯āĻžāĻ•āĻāĻ¨ā§āĻĄ āĻĨā§‡āĻ•ā§‡ āĻšā§‡āĻĄāĻžāĻ°āĻ—ā§āĻ˛āĻŋ āĻ­ā§āĻ˛ āĻšāĻ˛ā§‡ "āĻ¤āĻĨā§āĻ¯" āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡ "āĻ¤ā§āĻ°ā§āĻŸāĻŋ" āĻ¸ā§āĻ¤āĻ°ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸ā§āĻĨāĻŋāĻ° āĻ˛āĻ—āĻŋāĻ‚;
  • HTTP/2 āĻāĻŦāĻ‚ aio_write āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻŋāĻ•āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¸ā§āĻĨāĻŋāĻ° āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻšā§āĻ¯āĻžāĻ™ā§āĻ—āĻŋāĻ‚ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĨ¤

āĻ‰āĻ¤ā§āĻ¸: opennet.ru

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨