[Nginx] āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ°ā§‡āĻ¸āĻĒāĻ¨ā§āĻ¸_āĻ¸ā§āĻŸā§āĻ¯āĻžāĻŸāĻžāĻ¸ = 0 āĻšāĻžāĻ°āĻžāĻ¤ā§‡ āĻšāĻ¯āĻŧ

"sidenotes" āĻŦāĻŋāĻ­āĻžāĻ— āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§.

āĻŸāĻŋ āĻāĻ˛: āĻĄāĻŋāĻ†āĻ°:

http2_max_field_size 8k; # вŅĐĩŅ… ŅĐŋĐ°ŅĐĩŅ‚!

āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡, āĻŦā§āĻ¯āĻžāĻ•āĻāĻ¨ā§āĻĄā§‡āĻ° āĻ•āĻŋāĻ›ā§ āĻ…āĻ­ā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§€āĻŖ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ†āĻŽāĻŋ āĻ˛āĻ—āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻ…āĻĻā§āĻ­ā§āĻ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž_āĻ•ā§‹āĻĄ āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°ā§‡āĻ›āĻŋ, āĻ¯āĻĨāĻž 0āĨ¤ āĻ˛āĻ—āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻāĻŸāĻŋ āĻāĻ°āĻ•āĻŽ āĻ•āĻŋāĻ›ā§ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ:

{
  "timestamp": "2020-01-17T08:41:51+00:00",
  "remote_addr": "zzz.zzz.zzz.zzz",
  "request_time": 0,
  "upstream_response_time": "",
  "upstream_header_time": "",
  "http_accept_language": "-language",
  "response_status": 0,
  "request": "",
  "host": "example.com",
  "upstream_addr": "",
  "http_referrer": "",
  "request_length": 5854,
  "bytes_sent": 0,
  "http_user_agent": ""
}


āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻĒāĻĄāĻŧāĻž āĻāĻŦāĻ‚ āĻāĻ‡ āĻŦāĻŋāĻˇāĻ¯āĻŧā§‡ āĻ—ā§āĻ—āĻ˛āĻŋāĻ‚ āĻāĻ•ā§‡āĻŦāĻžāĻ°ā§‡ āĻ•āĻŋāĻ›ā§āĻ‡ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ - āĻ•āĻžāĻ°āĻŖ... āĻāĻŸāĻŋ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯ā§‡ āĻāĻ‡ āĻ†āĻšāĻ°āĻŖāĻŸāĻŋ āĻ˜āĻŸā§‡ āĻ¯āĻ–āĻ¨ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻšā§‡āĻĄāĻžāĻ° āĻĒāĻžāĻ¸ āĻ¨āĻž āĻ•āĻ°ā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°ā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻ­āĻžāĻ˛, āĻāĻŦāĻ‚ wsgi_ āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻžāĻĢāĻžāĻ° āĻ†āĻ•āĻžāĻ° āĻ¸āĻš āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻŦāĻšāĻŋāĻ°āĻžāĻ—āĻ¤ āĻœāĻŋāĻ¨āĻŋāĻ¸, āĻ¯āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ "āĻ•ā§‹āĻ¨ āĻ­āĻžāĻŦā§‡āĻ‡" āĻļāĻŦā§āĻĻā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ–āĻžāĻĒ āĻ–āĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤

āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ­āĻžāĻŦā§‡, āĻ†āĻŽāĻ°āĻž āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§‡āĻ›āĻŋ āĻ¯ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻŸāĻŋ āĻ•ā§‹āĻ¨āĻ“ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¨āĻ¯āĻŧ, āĻāĻ‡ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŸāĻŋ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻžāĻ¯āĻŧ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ¯ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ­āĻ˛āĻŋāĻ‰āĻŽāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻāĻŸāĻŋ āĻāĻ•ā§‡āĻŦāĻžāĻ°ā§‡āĻ‡ āĻ¸āĻŽāĻžāĻ˛ā§‹āĻšāĻ¨āĻžāĻŽā§‚āĻ˛āĻ• āĻ¨āĻ¯āĻŧāĨ¤

āĻ āĻŋāĻ• āĻ¯āĻ¤āĻ•ā§āĻˇāĻŖ āĻ¨āĻž āĻ†āĻŽāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ¯āĻŧ āĻŦāĻŋāĻ­ā§āĻ°āĻžāĻ¨ā§āĻ¤ āĻ›āĻŋāĻ˛āĻžāĻŽ: āĻ•āĻŋāĻ›ā§ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻ˛āĻŋāĻ™ā§āĻ•āĻ—ā§āĻ˛āĻŋ http-āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ āĻ–ā§‹āĻ˛āĻž āĻšāĻ¯āĻŧ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ https āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖāĻ­āĻžāĻŦā§‡ āĻ…āĻ¸ā§āĻŦā§€āĻ•āĻžāĻ° āĻ•āĻ°ā§‡, āĻŦāĻŋāĻ¸ā§āĻŽāĻ¯āĻŧāĻ•āĻ° āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡: āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ #0 āĻšā§‹āĻ¸ā§āĻŸā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻ…āĻ•ā§āĻˇāĻ¤ āĻ†āĻ›ā§‡
āĻ•āĻžāĻ°ā§āĻ˛: (52) āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻĨā§‡āĻ•ā§‡ āĻ–āĻžāĻ˛āĻŋ āĻ‰āĻ¤ā§āĻ¤āĻ°

āĻ˛āĻ—āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡, āĻ†āĻŽāĻ°āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ†āĻ‡āĻĒāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ‡ āĻœāĻŋāĻ¨āĻŋāĻ¸āĻŸāĻŋ āĻŸā§āĻ°ā§āĻ¯āĻžāĻ• āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻ•ā§āĻˇāĻŽ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋ - āĻ•ā§‹āĻ¨āĻ“ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻŦāĻž āĻ…āĻ¨ā§āĻ¯ āĻ•ā§‹āĻ¨āĻ“ āĻĄā§‡āĻŸāĻž āĻ›āĻŋāĻ˛ āĻ¨āĻž, āĻ¯ā§‡āĻŽāĻ¨āĻŸāĻŋ āĻ‰āĻĒāĻ°ā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĨā§‡āĻ•ā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻļā§āĻ§ā§ āĻ•ā§āĻ–ā§āĻ¯āĻžāĻ¤ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻŸāĻžāĻ¸ 0, āĻ¤āĻŦā§‡ āĻ†āĻŽāĻŋ āĻœāĻžāĻ¨āĻŋ āĻ¯ā§‡ āĻ†āĻŽāĻŋ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡ āĻŦāĻžāĻ§āĻž āĻĻāĻŋāĻ‡āĻ¨āĻŋ! āĻ†āĻŽāĻŋ āĻŦā§āĻāĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°āĻ˛āĻžāĻŽ āĻ•āĻŋ āĻ­ā§āĻ˛ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻŦāĻ‚ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ–ā§āĻŦ āĻ¸āĻšāĻœ āĻšāĻ¤ā§‡ āĻĒāĻ°āĻŋāĻŖāĻ¤:

āĻļā§āĻ¨ā§āĻ¨ 443 āĻāĻ¸āĻāĻ¸āĻāĻ˛ http2 āĻŦā§āĻ¯āĻžāĻ•āĻ˛āĻ—=8192;

āĻ āĻŋāĻ• āĻ†āĻ›ā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻ¸āĻāĻ¸āĻāĻ˛ āĻ¸āĻ‚āĻ¯ā§‹āĻ—ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ http2 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ¨, āĻ¤āĻŦā§‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻŦāĻžāĻĢāĻžāĻ°āĻ—ā§āĻ˛āĻŋ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻŸāĻŋ āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻ¨āĻ¯āĻŧ, āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ ngx_http_v2_module āĻ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻž āĻ†āĻŦāĻļā§āĻ¯āĻ•, āĻ¯āĻĨāĻž:

ХиĐŊŅ‚Đ°ĐēŅĐ¸Ņ:	http2_max_field_size Ņ€Đ°ĐˇĐŧĐĩŅ€;
ĐŖĐŧĐžĐģŅ‡Đ°ĐŊиĐĩ:	http2_max_field_size 4k;
КоĐŊŅ‚ĐĩĐēŅŅ‚:	http, server

HPACK āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¸āĻ‚āĻ•ā§āĻšāĻŋāĻ¤ āĻāĻ•āĻŸāĻŋ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻļāĻŋāĻ°ā§‹āĻ¨āĻžāĻŽā§‡āĻ° āĻ¸āĻ°ā§āĻŦā§‹āĻšā§āĻš āĻ†āĻ•āĻžāĻ° āĻ¸ā§€āĻŽāĻŋāĻ¤ āĻ•āĻ°ā§‡āĨ¤ āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻ¨āĻžāĻŽ āĻāĻŦāĻ‚ āĻŽāĻžāĻ¨ āĻ‰āĻ­āĻ¯āĻŧ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡āĻ‡ āĻ¸āĻŽāĻžāĻ¨āĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ¯ā§‹āĻœā§āĻ¯āĨ¤ āĻšāĻžāĻĢāĻŽā§āĻ¯āĻžāĻ¨ āĻāĻ¨āĻ•ā§‹āĻĄāĻŋāĻ‚ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ˛ā§‡, āĻ†āĻ¨āĻĒā§āĻ¯āĻžāĻ• āĻ•āĻ°āĻž āĻ¨āĻžāĻŽ āĻāĻŦāĻ‚ āĻŽāĻžāĻ¨ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚āĻ—ā§āĻ˛āĻŋāĻ° āĻĒā§āĻ°āĻ•ā§ƒāĻ¤ āĻ†āĻ•āĻžāĻ° āĻŦāĻĄāĻŧ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻ¸ā§€āĻŽāĻž āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— āĻĒā§āĻ°āĻļā§āĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ‰āĻĒāĻ¯ā§āĻ•ā§āĻ¤āĨ¤

āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ­āĻžāĻŦā§‡, āĻāĻŸāĻŋāĻ‡āĨ¤ āĻ†āĻ° āĻ¸āĻŦ āĻ•ā§‡āĻ¨? āĻ•āĻžāĻ°āĻŖ āĻ˛āĻŋāĻ™ā§āĻ•āĻŸāĻŋāĻ° āĻĻā§ˆāĻ°ā§āĻ˜ā§āĻ¯ āĻĻā§€āĻ°ā§āĻ˜ āĻ›āĻŋāĻ˛ - āĻ¸ā§‡āĻ‡ āĻāĻ•āĻ‡ 4k āĻāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻĻā§€āĻ°ā§āĻ˜āĨ¤

āĻāĻŸāĻŋ āĻ¸ā§‡āĻŸ āĻ•āĻ°ā§‡, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, 8kb (āĻŦāĻž āĻ¯āĻ¤āĻŸāĻž āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡), āĻ†āĻŽāĻ°āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻŋāĨ¤
āĻ¯ā§‡āĻŽāĻ¨ āĻœāĻŋāĻ¨āĻŋāĻ¸āĨ¤

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

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