nginx 1.25.3 āĻāϰ āĻĒā§āϰāϧāĻžāύ āĻļāĻžāĻāĻž āĻĒā§āϰāĻāĻžāĻļ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§, āϝāĻžāϰ āĻŽāϧā§āϝ⧠āύāϤā§āύ āĻŦā§āĻļāĻŋāώā§āĻā§āϝāĻā§āϞāĻŋāϰ āĻŦāĻŋāĻāĻžāĻļ āĻ āĻŦā§āϝāĻžāĻšāϤ āϰāϝāĻŧā§āĻā§āĨ¤ āϏāĻŽāĻžāύā§āϤāϰāĻžāϞ-āϰāĻā§āώāĻŖāĻžāĻŦā§āĻā§āώāĻŖ āĻāϰāĻž āϏā§āĻĨāĻŋāϤāĻŋāĻļā§āϞ āĻļāĻžāĻāĻž 1.24.x-āĻ āĻļā§āϧā§āĻŽāĻžāϤā§āϰ āĻā§āϰā§āϤāϰ āĻŦāĻžāĻ āĻāĻŦāĻ āĻĻā§āϰā§āĻŦāϞāϤāĻž āĻĻā§āϰ āĻāϰāĻžāϰ āϏāĻžāĻĨā§ āϏāĻŽā§āĻĒāϰā§āĻāĻŋāϤ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āϰāϝāĻŧā§āĻā§āĨ¤ āĻāĻŦāĻŋāώā§āϝāϤā§, āĻĒā§āϰāϧāĻžāύ āĻļāĻžāĻāĻž 1.25.x āĻāϰ āĻāĻĒāϰ āĻāĻŋāϤā§āϤāĻŋ āĻāϰ⧠āĻāĻāĻāĻŋ āϏā§āĻĨāĻŋāϤāĻŋāĻļā§āϞ āĻļāĻžāĻāĻž 1.26 āĻāĻ āĻŋāϤ āĻšāĻŦā§āĨ¤ āĻĒā§āϰāĻāϞā§āĻĒā§āϰ āĻā§āĻĄāĻāĻŋ āϏāĻŋ āϤ⧠āϞā§āĻāĻž āĻāĻŦāĻ āĻŦāĻŋāĻāϏāĻĄāĻŋ āϞāĻžāĻāϏā§āύā§āϏā§āϰ āĻ āϧā§āύ⧠āĻŦāĻŋāϤāϰāĻŖ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§āĨ¤
āĻĒāϰāĻŋāĻŦāϰā§āϤāύāĻā§āϞāĻŋāϰ āĻŽāϧā§āϝā§:
- HTTP/2 āĻā§āϞāĻžāϝāĻŧā§āύā§āĻāĻĻā§āϰ āĻ āϏā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻāĻžāϰā§āϝāĻāϞāĻžāĻĒā§āϰ āĻŦāĻŋāϰā§āĻĻā§āϧ⧠āϏā§āϰāĻā§āώāĻž āĻļāĻā§āϤāĻŋāĻļāĻžāϞ⧠āĻāϰāĻž āĻšāϝāĻŧā§āĻā§, āĻāĻŦāĻ āĻŦāĻŋāĻļā§āώ āĻāϰā§, "āϰâā§āϝāĻžāĻĒāĻŋāĻĄ āϰāĻŋāϏā§āĻ" āĻā§āϞāĻžāϏā§āϰ DoS āĻāĻā§āϰāĻŽāĻŖā§āϰ āĻŦāĻŋāϰā§āĻĻā§āϧā§, āϝā§āĻāĻžāύ⧠āĻāĻāĻāĻŋ āĻāĻāĻ HTTP/2 āϏāĻāϝā§āĻā§āϰ āĻŽāϧā§āϝ⧠āĻŦāĻŋāĻĒā§āϞ āϏāĻāĻā§āϝāĻ āĻ āĻŦāĻŋāϞāĻŽā§āĻŦā§ āϰāĻŋāϏā§āĻ āĻĨā§āϰā§āĻĄ āϤā§āϰāĻŋ āĻāϰāĻž āĻšāϝāĻŧāĨ¤ āĻĄāĻŋāĻĢāϞā§āĻ āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύā§, āĻāĻ āϧāϰāύā§āϰ āĻāĻā§āϰāĻŽāĻŖāĻā§āϞāĻŋ āϏāĻāϝā§āĻ āĻĒā§āϰāϤāĻŋ āĻ āύā§āϰā§āϧā§āϰ āϏāĻāĻā§āϝāĻž "keepalive_requests" (āĻĒā§āϰāϤāĻŋ 1000 āĻ āύā§āϰā§āϧā§āϰ āĻĒāϰ⧠āϏāĻāϝā§āĻ āĻĒā§āύāϰāĻžāϝāĻŧ āϏā§āĻ āĻāϰāĻž āĻšāĻŦā§) āĻāĻŦāĻ āϏā§āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž "limit_req" āĻĻā§āĻŦāĻžāϰāĻž āϏā§āĻŽāĻžāĻŦāĻĻā§āϧāĨ¤ āĻĒā§āϰāĻā§āϰ āϏāĻāĻā§āϝāĻ āĻĨā§āϰā§āĻĄā§āϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻ āύā§āϰā§āϧā§āϰ āĻŦāύā§āϝāĻžāϰ āĻāĻā§ āϏāĻžāĻĄāĻŧāĻž āĻĻā§āĻāϝāĻŧāĻžāϰ āĻāύā§āϝ, āĻāĻāĻāĻŋ āĻ āϤāĻŋāϰāĻŋāĻā§āϤ āϏā§āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž āϝā§āĻā§āϤ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§ āϝāĻž āĻĄāĻŋāĻĢāϞā§āĻāĻāĻžāĻŦā§ āĻĒā§āϰāϤāĻŋ āĻāĻā§āύā§āĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāϰāĻŖ āĻāĻā§āϰ⧠256āĻāĻŋāϰ āĻŦā§āĻļāĻŋ (2 * max_concurrent_streams) āύāϤā§āύ āĻĨā§āϰā§āĻĄ āϤā§āϰāĻŋ āĻāϰāĻžāϰ āĻ āύā§āĻŽāϤāĻŋ āĻĻā§āϝāĻŧ āύāĻžāĨ¤ āύāϤā§āύ āϏā§āĻŽāĻžāĻāĻŋ āĻāĻāĻ āϏāĻžāĻĨā§ āĻĨā§āϰā§āĻĄā§āϰ āϏāĻāĻā§āϝāĻžāϰ āϏāĻžāĻŽāĻā§āϰāĻŋāĻ āϏā§āĻŽāĻžāϤ⧠āĻĒā§āĻāĻāĻžāύā§āϰ āĻāĻā§ āĻ āύā§āϰā§āϧāĻā§āϞāĻŋāĻā§ āĻŦā§āϞāĻ āĻāϰāĻž āĻļā§āϰ⧠āĻāϰāĻž āϏāĻŽā§āĻāĻŦ āĻāϰ⧠āϤā§āϞā§, āĻāĻĻāĻžāĻšāϰāĻŖāϏā§āĻŦāϰā§āĻĒ āϝāĻāύ āĻĨā§āϰā§āĻĄāĻā§āϞāĻŋ āĻ ā§āϝāĻžāϏāĻŋāĻā§āĻā§āϰā§āύāĻžāϏāĻāĻžāĻŦā§ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻž āĻāϰāĻž āĻšāĻā§āĻā§ āĻŦāĻž āĻĢā§āϞāĻžāĻļ āĻāϰāĻž āĻšāĻā§āĻā§āĨ¤ āĻāĻ āϏāĻĒā§āϤāĻžāĻš āĻāĻā§ āĻĒā§āϰāĻāĻžāĻļāĻŋāϤ āĻ ā§āϝāĻžāĻā§āĻāĻŋ 1.3.1 (nginx āĻĢāϰā§āĻ) āĻāϰ āϰāĻŋāϞāĻŋāĻā§āĻ āĻāĻāĻ āϰāĻāĻŽ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻ āύā§āϤāϰā§āĻā§āĻā§āϤ āĻāϰāĻž āĻšāϝāĻŧā§āĻāĻŋāϞāĨ¤
- āϏā§āĻŦāϝāĻŧāĻāĻā§āϰāĻŋāϝāĻŧāĻāĻžāĻŦā§ HTTP/2 āϏāĻāϝā§āĻ āϏāύāĻžāĻā§āϤ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻŦā§āϝāĻŦāĻšā§āϤ āĻŦāĻžāĻĢāĻžāϰāĻā§āϞāĻŋāϰ āĻāύā§āύāϤ āĻŦā§āϝāĻŦāϏā§āĻĨāĻžāĻĒāύāĻžāĨ¤
- āĻŦāĻŋāĻĒā§āϞ āϏāĻāĻā§āϝāĻ "āĻ āĻŦāϏā§āĻĨāĻžāύ" āύāĻŋāϰā§āĻĻā§āĻļāĻžāĻŦāϞ⧠āϏāĻš āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύ āĻāĻžāϞ⧠āĻāϰāĻžāϰ āĻāϰā§āĻŽāĻā§āώāĻŽāϤāĻž āĻāύā§āύāϤ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§āĨ¤
- HTTP/2 āĻŦā§āϝāĻŦāĻšāĻžāϰ āύāĻž āĻāϰ⧠āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ āϝ⧠āĻāϰā§āĻŽā§ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻž āĻā§āϰā§āϝāĻžāĻļ āĻāĻāϤ⧠āĻĒāĻžāϰ⧠āϤāĻž āĻ āĻŋāĻ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§ SSL āĻāϰ.
- āĻāĻžāϞāĻŋ āĻŦā§āϝāĻžāĻā§āϝāĻžāĻŽā§āϞāĻ āĻĒāĻžāĻ ā§āϝ āϏāĻš āĻŦā§āϝāĻžāĻāĻāύā§āĻĄ āĻĻā§āĻŦāĻžāϰāĻž āĻĢāĻŋāϰ⧠āĻāϏāĻž "āϏā§āĻĨāĻŋāϤāĻŋ" āĻļāĻŋāϰā§āύāĻžāĻŽā§āϰ āϏā§āĻĨāĻŋāϰ āĻā§āϞ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāϰāĻŖāĨ¤
- PCRE2 āϞāĻžāĻāĻŦā§āϰā§āϰāĻŋ āϤā§āϰāĻŋ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻĒā§āύāĻāĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύā§āϰ āϏāĻŽāϝāĻŧ āĻāĻāĻāĻŋ āĻŽā§āĻŽāϰāĻŋ āϞāĻŋāĻ āϏāĻāĻļā§āϧāύ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§āĨ¤
- HTTP/3 āĻĒā§āϰā§āĻā§āĻāϞā§āϰ āĻāύā§āϝ āϏāĻŽāϰā§āĻĨāύ āϏāĻŽā§āĻĒāϰā§āĻāĻŋāϤ āϏāĻāĻļā§āϧāύ āĻāĻŦāĻ āĻāύā§āύāϤāĻŋāϰ āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻ āĻāĻļ āĻāĻžāϞ⧠āĻāϰāĻž āĻšāϝāĻŧā§āĻā§āĨ¤
āĻāĻāĻ āϏāĻŽāϝāĻŧā§, njs 0.8.2, āĻāĻāĻāĻŋ āĻāĻžāĻāĻžāϏā§āĻā§āϰāĻŋāĻĒā§āĻ āĻāύā§āĻāĻžāϰāĻĒā§āϰā§āĻāĻžāϰ āϝāĻžāϰ āĻāύā§āϝ āĻāϝāĻŧā§āĻŦ āϏāĻžāϰā§āĻāĻžāϰ nginxāĨ¤ njs āĻāύā§āĻāĻžāϰāĻĒā§āϰā§āĻāĻžāϰ ECMAScript āϏā§āĻā§āϝāĻžāύā§āĻĄāĻžāϰā§āĻĄ āĻĒā§āϰāϝāĻŧā§āĻ āĻāϰ⧠āĻāĻŦāĻ āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύ āϏā§āĻā§āϰāĻŋāĻĒā§āĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠nginx āĻāϰ āĻ āύā§āϰā§āϧ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāϰāĻŖ āĻā§āώāĻŽāϤāĻž āĻĒā§āϰāϏāĻžāϰāĻŋāϤ āĻāϰāϤ⧠āĻāĻĒāύāĻžāĻā§ āĻ āύā§āĻŽāϤāĻŋ āĻĻā§āϝāĻŧāĨ¤ āϏā§āĻā§āϰāĻŋāĻĒā§āĻāĻā§āϞāĻŋ āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύ āĻĢāĻžāĻāϞ⧠āĻāύā§āύāϤ āĻ āύā§āϰā§āϧ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāĻāϰāĻŖ āϞāĻāĻŋāĻ āϏāĻāĻā§āĻāĻžāϝāĻŧāĻŋāϤ āĻāϰāϤā§, āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύ āϤā§āϰāĻŋ āĻāϰāϤā§, āĻāϤāĻŋāĻļā§āϞāĻāĻžāĻŦā§ āĻĒā§āϰāϤāĻŋāĻā§āϰāĻŋāϝāĻŧāĻž āϤā§āϰāĻŋ āĻāϰāϤā§, āĻ āύā§āϰā§āϧ/āĻĒā§āϰāϤāĻŋāĻā§āϰāĻŋāϝāĻŧāĻž āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻāϰāϤā§, āĻ āĻĨāĻŦāĻž āĻāϝāĻŧā§āĻŦ āĻ ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύāĻā§āϞāĻŋāϤ⧠āϏāĻŽāϏā§āϝāĻž āϏāĻŽāĻžāϧāĻžāύā§āϰ āĻāύā§āϝ āĻĻā§āϰā§āϤ āϏā§āĻāĻžāĻŦ āϤā§āϰāĻŋ āĻāϰāϤ⧠āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤ āύāϤā§āύ āϏāĻāϏā§āĻāϰāĻŖā§ āĻāĻāĻāĻŋ āĻāύāϏā§āϞ āĻ āĻŦāĻā§āĻā§āĻ āϝā§āĻā§āϤ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§, āϝāĻž error(), info(), log(), time(), timeEnd(), āĻāĻŦāĻ warn() āĻĒāĻĻā§āϧāϤāĻŋ āĻĒā§āϰāĻĻāĻžāύ āĻāϰā§āĨ¤ fs.existsSync() āĻĒāĻĻā§āϧāϤāĻŋāĻāĻŋ fs āĻŽāĻĄāĻŋāĻāϞ⧠āϝā§āĻ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§āĨ¤
āĻāĻĒāύāĻŋ NGINX āĻāĻāύāĻŋāĻ 1.31.1 āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύ āϏāĻžāϰā§āĻāĻžāϰā§āϰ āĻĒā§āϰāĻāĻžāĻļāύāĻžāĻ āύā§āĻ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύ, āϝāĻž āĻŦāĻŋāĻāĻŋāύā§āύ āĻĒā§āϰā§āĻā§āϰāĻžāĻŽāĻŋāĻ āĻāĻžāώāĻžāϝāĻŧ (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js āĻāĻŦāĻ Java) āĻāϝāĻŧā§āĻŦ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύ āĻāĻžāϞāĻžāύā§āϰ āĻāύā§āϝ āĻāĻāĻāĻŋ āϏāĻŽāĻžāϧāĻžāύ āĻĒā§āϰāĻĻāĻžāύ āĻāϰā§āĨ¤ NGINX āĻāĻāύāĻŋāĻ āĻāĻāĻ āϏāĻžāĻĨā§ āĻŦāĻŋāĻāĻŋāύā§āύ āĻĒā§āϰā§āĻā§āϰāĻžāĻŽāĻŋāĻ āĻāĻžāώāĻžāϝāĻŧ āĻāĻāĻžāϧāĻŋāĻ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύ āĻāĻžāϞāĻžāϤ⧠āĻĒāĻžāϰā§, āϝāĻžāϰ āϞāĻā§āĻ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāĻāĻžāϰāĻā§āϞāĻŋ āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύ āĻĢāĻžāĻāϞ āϏāĻŽā§āĻĒāĻžāĻĻāύāĻž āĻāĻŦāĻ āĻĒā§āύāϰāĻžāϝāĻŧ āĻāĻžāϞ⧠āĻāϰāĻžāϰ āĻĒā§āϰāϝāĻŧā§āĻāύ āĻāĻžāĻĄāĻŧāĻžāĻ āĻāϤāĻŋāĻļā§āϞāĻāĻžāĻŦā§ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻāϰāĻž āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤ āĻŦāĻžāĻ āĻĢāĻŋāĻā§āϏ āĻāĻžāĻĄāĻŧāĻžāĻ, Wasm āĻŽāĻĄāĻŋāĻāϞā§āϰ āύāϤā§āύ āϏāĻāϏā§āĻāϰāĻŖāĻāĻŋ 4 āĻāĻŋāĻāĻžāĻŦāĻžāĻāĻā§āϰ āĻā§āϝāĻŧā§ āĻŦāĻĄāĻŧ āĻĄā§āĻāĻž āϞā§āĻĄ āĻāϰāĻžāϰ āĻ
āύā§āĻŽāϤāĻŋ āĻĻā§āϝāĻŧ āĻāĻŦāĻ āĻĒā§āϰāϤāĻŋāĻā§āϰāĻŋāϝāĻŧāĻž āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ, HTTP āϏā§āĻā§āϝāĻžāĻāĻžāϏ āĻā§āĻĄ āϏā§āĻ āĻāϰāĻž āϏāĻŽā§āĻāĻŦāĨ¤
āĻāϤā§āϏ: opennet.ru
