[Docker] Nginx๋ฅผ ํ†ตํ•œ ๊ธฐ์ˆ 

Nginx๋Š” ์›น ์„œ๋ฒ„์ด๋‹ค. 

๋ณดํ†ต ์›น ์„œ๋น„์Šค๋Š” ํด๋ผ์ด์–ธํŠธ -> ์›น ์„œ๋ฒ„ -> WAS -> DB ์ˆœ์œผ๋กœ ์š”์ฒญ์ด ๋˜๊ณ  ์—ญ์ˆœ์œผ๋กœ ์‘๋‹ต์ด ๋œ๋‹ค. 

WAS๊ฐ€ ์žˆ๋Š”๋ฐ ์™œ ์›น ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ• ๊นŒ?

์ด์œ ๋Š” WAS์˜ ๋ถ€๋‹ด์„ ์ค„์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉ๋œ๋‹ค. WAS๋Š” ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž…, ๊ฐœ์ธ์ •๋ณด ์ˆ˜์ • ๋“ฑ ๋™์  ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ์ž‘์—…๋Ÿ‰์ด ๋งŽ๋‹ค. ์ด์— HTML, CSS, JS, ์ด๋ฏธ์ง€ ๋“ฑ ์ •์ ์ธ ํŒŒ์ผ์„ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „๋‹ฌํ•˜๋Š” ์—ญํ• ์„ ์›น ์„œ๋ฒ„์— ์œ„์ž„ํ•จ์œผ๋กœ์จ WAS ์ž‘์—… ๋ถ€๋‹ด์„ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค.

 

Nginx๋ฅผ ํ†ตํ•ด ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ ๊ธฐ์ˆ ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

ํ”„๋ก์‹œ์˜ ์‚ฌ์ „์  ์ •์˜๋Š” "๋Œ€๋ฆฌ" ์ด๋‹ค. ํ”„๋ก์‹œ๋Š” ํฌ๊ฒŒ ํฌ์›Œ๋“œ ํ”„๋ก์‹œ, ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ๋กœ ๊ตฌ๋ถ„๋œ๋‹ค.

 

ํฌ์›Œ๋“œ ํ”„๋ก์‹œ๋Š” ํด๋ผ์ด์–ธํŠธ์™€ ์ธํ„ฐ๋„ท ๊ทธ ์‚ฌ์ด์— ์žˆ๋Š” ์˜์—ญ์„ ๋งํ•œ๋‹ค. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์–ด๋– ํ•œ ์ •๋ณด๋ฅผ ์š”์ฒญํ•˜๋ฉด ํฌ์›๋“œ ํ”„๋ก์‹œ๊ฐ€ ์ด๋ฅผ ๋Œ€์‹  ๋ฐ›์•„์„œ ์„œ๋ฒ„์—๊ฒŒ ์ „๋‹ฌ์„ ํ•œ๋‹ค. ์ดํ›„ ์„œ๋ฒ„์˜ ์‘๋‹ต ๋˜ํ•œ ํฌ์›Œ๋“œ ํ”„๋ก์‹œ๊ฐ€ ๋Œ€์‹  ๋ฐ›์•„ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „๋‹ฌํ•œ๋‹ค. ํฌ์›Œ๋“œ ํ”„๋ก์‹œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํด๋ผ์ด์–ธํŠธ์˜ IP ์ฃผ์†Œ๊ฐ€ ์›น ์„œ๋ฒ„์— ๋…ธ์ถœ๋˜์ง€์•Š์•„, ํด๋ผ์ด์–ธํŠธ์˜ ์œ„์น˜๋‚˜ ์‹ ์›์„ ์‹๋ณ„ํ•˜๋Š” ๊ฒƒ์ด ์–ด๋ ค์›Œ์ ธ ๋ณด์•ˆ์ด ๊ฐ•ํ™”๋œ๋‹ค. ๋˜ํ•œ ์ ‘๊ทผ ์ œ์–ด๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค. ํฌ์›Œ๋“œ ํ”„๋ก์‹œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • IP ์ฃผ์†Œ, ๋„๋ฉ”์ธ ๋˜๋Š” URL์— ๋Œ€ํ•œ ์ ‘๊ทผ์„ ์ œํ•œํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ๋Š” ์ธํ„ฐ๋„ท๊ณผ ๋ฐฑ์—”๋“œ ๊ทธ ์‚ฌ์ด์— ์žˆ๋Š” ์„œ๋ฒ„ ์˜์—ญ์„ ๋งํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด WAS๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ์„œ๋ฒ„๊ฐ€ ์—ฌ๋Ÿฌ ๋Œ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •์„ ํ•ด๋ณด์ž. ํด๋ผ์ด์–ธํŠธ๊ฐ€ https://example/1, https://example/2์œผ๋กœ ์ ‘๊ทผ์„ ํ–ˆ๋‹ค๋ฉด 1์€ A ์„œ๋ฒ„๋กœ ์ „๋‹ฌ, 2๋Š” B ์„œ๋ฒ„๋กœ ์ „๋‹ฌํ•˜์—ฌ ์š”์ฒญ์— ํ•ด๋‹นํ•˜๋Š” ์›น ์„œ๋ฒ„๋กœ ๊ธธ์„ ๋ถ„๋ฐฐํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฒƒ์„ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์ด๋ผ ํ•œ๋‹ค.

๋˜ํ•œ Nginx๋Š” SSL์„ ์ง€์›ํ•œ๋‹ค. SSL์€ Secure Sockets Layers๋กœ ์›น ์‚ฌ์ดํŠธ์™€ ์‚ฌ์šฉ์ž ๊ฐ„์˜ ํ†ต์‹ ์„ ์•”ํ˜ธํ™”ํ•˜๊ณ  ๋ณด์•ˆ์„ ์œ ์ง€ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํ”„๋กœํ† ์ฝœ์ด๋‹ค. ์‰ฝ๊ฒŒ ์–˜๊ธฐํ•˜๋ฉด HTTP๊ฐ€ ์•„๋‹Œ HTTPS ์ด๋‹ค. SSL ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ์›น ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ ๊ฐ„์— ๋ณด์•ˆ ์—ฐ๊ฒฐ์„ ์„ค์ •ํ•˜๊ณ , SSL ์ธ์ฆ์„œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋ฒ„์˜ ์‹ ์›์„ ์ธ์ฆํ•œ๋‹ค. Nginx๋Š” HTTPS ์ธ์ฆ์„œ๋ฅผ ์ œ๊ณตํ•ด ์ค„ ์ˆ˜ ์žˆ๋‹ค.