ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ Π΅ ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½ ΡΡΡΠ²ΡΡ Π·Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ NGINX ΠΌΠΎΠ΄ΡΠ» 1.13, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π° ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅Π± ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΅Π·ΠΈΡΠΈ Π·Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°Π½Π΅ (Python, PHP, Perl, Ruby, Go, JavaScript / Node.js ΠΈ Java). ΠΠΎΠ΄ ΠΊΠΎΠ½ΡΡΠΎΠ»Π° Π½Π° NGINX Unit ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ°Π±ΠΎΡΡΡ Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΅Π·ΠΈΡΠΈ Π·Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°Π½Π΅, ΡΠΈΠΈΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΎ, Π±Π΅Π· Π΄Π° Π΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π΄Π° ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅. ΠΠΎΠ΄ΡΡ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π΅Π·ΠΈΠΊ C ΠΈ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΡΠ΅ ΠΎΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠ°Π½ ΠΏΠΎΠ΄ Apache 2.0. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ Π·Π°ΠΏΠΎΠ·Π½Π°Π΅ΡΠ΅ Ρ Ρ
Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈΡΠ΅ Π½Π° NGINX Unit Π² ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΡΠ²ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅.
ΠΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ Ρ Π½ΠΎΠ²ΠΈΡ ΠΊΠ»ΠΎΠ½ Π½Π° Python 3.8, ΡΠ΅ΡΠ°Π²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ruby 2.6 ΠΈ Π²Π½Π΅Π΄ΡΡΠ²Π° ΠΏΠΎΠ΄ΠΊΡΠ΅ΠΏΠ° ΡΠ°Π±ΠΎΡΠ° Π² ΠΏΡΠΎΡΡ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΎΠ±ΡΠ°ΡΠ΅Π½ ΠΏΡΠΎΠΊΡΠΈ. ΠΠ±ΡΠ°ΡΠ½ΠΈΡΡ ΠΏΡΠΎΠΊΡΠΈ ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΡΠ° βΠΏΡΠΎΠΊΡΠΈβ Π² ΡΠ΅ΠΊΡΠΈΡΡΠ° βΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅β. ΠΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΠ΅ ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ Π½Π° Π·Π°ΡΠ²ΠΊΠΈ ΡΡΠ΅Π· IPv4, IPv6 ΠΈΠ»ΠΈ unix ΡΠΎΠΊΠ΅ΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
{
"ΠΌΠ°ΡΡΡΡΡΠΈ": [
{
"ΡΡΠ²ΠΏΠ°Π΄Π°": {
"uri": "/ipv4/*"
},
"Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅": {
"ΠΏΡΠΎΠΊΡΠΈ": "http://127.0.0.1:8080"
}
},
{
"ΡΡΠ²ΠΏΠ°Π΄Π°": {
"uri": "/unix/*"
},
"Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅": {
"ΠΏΡΠΎΠΊΡΠΈ": "http://unix:/path/to/unix.sock"
}
}
]}
Π Π΄ΡΠ»Π³ΠΎΡΡΠΎΡΠ΅Π½ ΠΏΠ»Π°Π½ ΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠ° Unit Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π²ΡΡΠ½Π΅ Π² ΡΠ°ΠΌΠΎΠ΄ΠΎΡΡΠ°ΡΡΡΠ΅Π½ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Ρ Π²ΠΈΡΠΎΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Ρ Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ ΡΠ΅Π± ΡΡΠ»ΡΠ³ΠΈ. ΠΠ° Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½Π΅ ΡΠ°Π·ΠΈ ΡΠ΅Π», Π±ΡΠ΄Π΅ΡΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠ° ΡΠ΅ ΡΠ΅ ΡΡΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈ Π²ΡΡΡ
Ρ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΊΠ°ΡΠΎ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ, ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡ ΠΈ DoS Π·Π°ΡΠΈΡΠ°, Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π±Π°Π»Π°Π½ΡΠΈΡΠ°Π½Π΅ Π½Π° Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ ΠΈ ΡΠΎΠ»Π΅ΡΠ°Π½ΡΠ½ΠΎΡΡ ΠΊΡΠΌ Π³ΡΠ΅ΡΠΊΠΈ, Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΡΡΠ°ΡΠΈΡΠ½ΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅, ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru