NGINX ์œ ๋‹› 1.13.0 ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ ๋ฆด๋ฆฌ์Šค

์ด์Šˆ๊ฐ€ ํ˜•์„ฑ๋จ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ NGINX ์œ ๋‹› 1.13, ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด(Python, PHP, Perl, Ruby, Go, JavaScript/Node.js ๋ฐ Java)๋กœ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์†”๋ฃจ์…˜์ด ๊ฐœ๋ฐœ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. NGINX ์œ ๋‹›์€ ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์—ฌ๋Ÿฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋™์‹œ์— ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ตฌ์„ฑ ํŒŒ์ผ์„ ํŽธ์ง‘ํ•˜๊ณ  ๋‹ค์‹œ ์‹œ์ž‘ํ•  ํ•„์š” ์—†์ด ์‹คํ–‰ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋™์ ์œผ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ๋Š” C๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ, ๋ฐฐํฌ์ž Apache 2.0์— ๋”ฐ๋ผ ๋ผ์ด์„ผ์Šค๊ฐ€ ๋ถ€์—ฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. NGINX Unit์˜ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐœํ‘œ ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ œ.

์ƒˆ ๋ฒ„์ „์€ ์ƒˆ๋กœ์šด Python 3.8 ๋ธŒ๋žœ์น˜์™€์˜ ํ˜ธํ™˜์„ฑ์„ ๋ณด์žฅํ•˜๊ณ  Ruby 2.6์„ ์‚ฌ์šฉํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ฉฐ ๋‹ค์Œ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์ง€์› ๋‹จ์ˆœ ์—ญ๋ฐฉํ–ฅ ํ”„๋ก์‹œ ๋ชจ๋“œ์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์—ญ๋ฐฉํ–ฅ ํ”„๋ก์‹œ๋Š” "action" ์„น์…˜์˜ "proxy" ์ง€์‹œ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. IPv4, IPv6 ๋˜๋Š” Unix ์†Œ์ผ“์„ ํ†ตํ•œ ์š”์ฒญ ์ „๋‹ฌ์ด ์ง€์›๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด:

{
"๊ฒฝ๋กœ": [
{
"์„ฑ๋ƒฅ": {
"uri": "/ipv4/*"
},
"ํ–‰๋™": {
"ํ”„๋ก์‹œ": "http://127.0.0.1:8080"
}
},
{
"์„ฑ๋ƒฅ": {
"uri": "/์œ ๋‹‰์Šค/*"
},
"ํ–‰๋™": {
"ํ”„๋ก์‹œ": "http://unix:/path/to/unix.sock"
}
}
] }

์žฅ๊ธฐ์ ์œผ๋กœ Unit์„ ๋ชจ๋“  ์›น ์„œ๋น„์Šค์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ž๊ธ‰์ž์กฑ ๊ฐ€๋Šฅํ•œ ๊ณ ์„ฑ๋Šฅ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ์ „ํ™˜ํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค. ์ด ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ํ–ฅํ›„ ์ž‘์—…์€ ๋ณด์•ˆ, ๊ฒฉ๋ฆฌ ๋ฐ DoS ๋ณดํ˜ธ, ๋‹ค์–‘ํ•œ ์œ ํ˜•์˜ ๋™์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ ๊ธฐ๋Šฅ, ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ๋ฐ ๋‚ด๊ฒฐํ•จ์„ฑ, ์ •์  ์ฝ˜ํ…์ธ ์˜ ํšจ์œจ์ ์ธ ์ „๋‹ฌ, ํ†ต๊ณ„ ๋„๊ตฌ ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง๊ณผ ๊ฐ™์€ ์˜์—ญ์— ์ค‘์ ์„ ๋‘˜ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€