์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ ๋ฆด๋ฆฌ์ค , ๋ค์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด(Python, PHP, Perl, Ruby, Go, JavaScript/Node.js ๋ฐ Java)๋ก ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ ์ ์๋ ์๋ฃจ์ ์ด ๊ฐ๋ฐ๋๊ณ ์์ต๋๋ค. NGINX ์ ๋์ ๋ค์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ์ฌ๋ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋์์ ์คํํ ์ ์์ผ๋ฉฐ, ๊ตฌ์ฑ ํ์ผ์ ํธ์งํ๊ณ ๋ค์ ์์ํ ํ์ ์์ด ์คํ ๋งค๊ฐ๋ณ์๋ฅผ ๋์ ์ผ๋ก ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ์ฝ๋๋ C๋ก ์์ฑ๋์์ผ๋ฉฐ, Apache 2.0์ ๋ฐ๋ผ ๋ผ์ด์ผ์ค๊ฐ ๋ถ์ฌ๋์์ต๋๋ค. NGINX Unit์ ๊ธฐ๋ฅ์ ๋ํด ์์๋ณผ ์ ์์ต๋๋ค. ์ฒซ ๋ฒ์งธ ๋ฌธ์ .
์ ๋ฒ์ ์์:
- "action" ๋ธ๋ก์์ "return" ๋ฐ "location" ํํ์์ ์ฌ์ฉํ์ฌ ์์์ ๋ฐํ ์ฝ๋๋ฅผ ์ฆ์ ๋ฐํํ๊ฑฐ๋ ์ธ๋ถ ๋ฆฌ์์ค๋ก ๋ฆฌ๋๋ ์
ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, "*/.git/*" ๋ง์คํฌ์ ์ผ์นํ๋ URI์ ๋ํ ์ก์ธ์ค๋ฅผ ๊ฑฐ๋ถํ๊ฑฐ๋ www๊ฐ ์๋ ํธ์คํธ๋ก ๋ฆฌ๋๋ ์
ํ๋ ค๋ฉด ๋ค์ ์ค์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
{
"์ฑ๋ฅ": {
"uri": "*/.git/*"
},"ํ๋": {
"๋ฐํ": 403
}
}{
"์ฑ๋ฅ": {
"ํธ์คํธ": "example.org",
},"ํ๋": {
"๋ฐํ": 301,
"์์น": "https://www.example.org"
}
} - ๋ธ๋ก ๋จ์์ ๋ถ๋ถ์ ์ธ ์๋ฒ ๊ฐ์ค์น ์ง์ "". ์๋ฅผ ๋ค์ด ์ ์ ๊ฐ์ค์น๋ฅผ ์ฌ์ฉํ๋ ๋์์ธ์ ๋ค๋ฅธ ์์ฒญ์ ์ ๋ฐ์ ํด๋นํ๋ 192.168.0.103์ผ๋ก ๋ฆฌ๋๋ ์
ํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
{
"192.168.0.101:8080": {
"๋ฌด๊ฒ": 2
},
"192.168.0.102:8080": {
"๋ฌด๊ฒ": 2
},
"192.168.0.103:8080": { },
"192.168.0.104:8080": {
"๋ฌด๊ฒ": 2
}
}์ด์ ๋ ๊ฐ๋จํ๊ณ ๋ ผ๋ฆฌ์ ์ธ ํ์์ผ๋ก ์ถ์ํ ์ ์์ต๋๋ค.
{
"192.168.0.101:8080": { },
"192.168.0.102:8080": { },
"192.168.0.103:8080": {
"๋ฌด๊ฒ": 0.5
},
"192.168.0.104:8080": { }
} - DragonFly BSD์ ๋น๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
- ๋์ ๋ถํ์์ ์ฝ๋ 502 "Bad Gateway"๊ฐ ์ถ๋ ฅ๋๋ ๋ฒ๊ทธ๋ฅผ ์์ ํ์ต๋๋ค.
- ๋ฆด๋ฆฌ์ค 1.13.0๋ถํฐ ๋ํ๋๋ ๋ผ์ฐํฐ์ ๋ฉ๋ชจ๋ฆฌ ๋์๋ฅผ ์์ ํ์ต๋๋ค.
- ์ผ๋ถ Node.js ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ์ ๋นํธํ์ฑ์ด ํด๊ฒฐ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru
