์ฐ๋ถํฌ์ Nginx ์ค์น & ํฌํธํฌ์๋ฉ
Nginx ์ค์น & ํฌํธํฌ์๋ฉ
Nginx๋ฅผ ์ค์นํ๊ณ ์๋ฒ์ ์ ์ํ๋ฉด ๋ฐ๋ก ์ฐ๊ฒฐํ ํฌํธํฌ์๋ฉ์ ํด๋ณด์.
Nginx ์ค์น
sudo apt-get install nginx
๋ช
๋ น์ด๋ฅผ ์ด์ฉํด ์ฐ๋ถํฌ์ ์ค์นํ๋ค.
์์ ๊ฐ์ด ์ฌ๋ฌ ๋ฉ์์ง์ ํจ๊ป nginx๊ฐ ์ค์น๋๋ค.
Nginx ์คํ & ์ ์
$ sudo service nginx start
ํด๋น ๋ช ๋ น์ด๋ก nginx๋ฅผ ์คํ์์ผ ์ค ๋ค, IP ์ฃผ์๋ก ์ ์ํด ์ค๋ค.
IP ์ฃผ์๋ก ์ ์
์์ ๊ฐ์ ํ๋ฉด์ด ๋์ค๋ฉด nginx๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์ค์น๋๊ณ ์คํ๋ ๊ฒ์ด๋ค.
(EC2๋ผ๋ฉด ํฌํธ ๋ฒํธ 80๋ฒ์ ๋ํ ์ ๊ทผ์ด ํ์ฉ๋ผ์์ด์ผ ํ๋ค.)
ํฌํธํฌ์๋ฉ ์ค์
Nginx๊ฐ ์คํ๋๋ฉด ๋ํดํธ ํฌํธ์ธ 80๋ฒ์ ์ ์ํ๋ฉด ์๋์ผ๋ก Nginx ํ์ด์ง๊ฐ ๋์จ๋ค.
Nginx๋ฅผ ์ฌ์ฉํ๋ ๋ชฉ์ ์ ์ํ ๋ Nginx๊ฐ ๋ฐ๋ผ๋ณด๋ ํฌํธ๋ฅผ ๋ณ๊ฒฝํ๋ ๋ฆฌ๋ฒ์ค ํ๋ก์๋ฅผ ์ ์ฉํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์, ์ค์ ์ผ๋ก ๊ธฐ๋ณธ ip์ ์ ์ํ์ ๋ Nginx๊ฐ ์คํ ์ค์ธ ์๋ฒ์ ํฌํธ๋ก ์ ์ํ ์ ์๋๋ก ํด์ฃผ์.
$ sudo vi /etc/nginx/nginx.conf
์ด ๋ช ๋ น์ด๋ก nginx ์ค์ ํ์ผ์ ์ด์ด๋ณด์.
server ์์ ํฌํธํฌ์๋ฉ ์ค์ ์ ํด์ค์ผ ํ๋๋ฐ ์ด์ ๊ฐ์ด server๋ฅผ ์ฐพ์๋ด๋ ์ ๋ณด์ด๋ ๊ฒฝ์ฐ๊ฐ ์๋ค.
์ด๋๋ ๋ค์์ ๋ช
๋ น์ด๋ก ํ์ผ์ ์ด์ด๋ณด์.
$ sudo vi /etc/nginx/sites-available/default
server๊ฐ ๋ณด์ผ ๊ฒ์ด๊ณ server ์์ location \
์ ๋ค์๊ณผ ๊ฐ์ด ํฌํธํฌ์๋ฉ์ ์ ์ฉํด ์ฃผ์.
์ด๋, try_files $uri $uri/ =404;
๋ #
์ผ๋ก ์ฃผ์ ์ฒ๋ฆฌ๋ฅผ ํด์ฃผ์.
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
# try_files $uri $uri/ =404;
proxy_set_header HOST $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://localhost:"์ํ๋ ํฌํธ ๋ฒํธ";
proxy_redirect off;
charset utf-8;
}
esc -> :wq๋ก ์ ์ฅ์ ํ ๋ค ์๋์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด ์ฃผ์.
$ sudo nginx -t
$ sudo service nginx reload
์คํ
๋ฆฌ๋ก๋ ์ํจ ๋ค, ๋ค์ ์ ์์ ์๋ํ๋ค.
ip ์ฃผ์ + ์๋ฒ url
์์๋ก ์คํ๋ง ๋ถํธ swagger ํ์ด์ง๋ฅผ ๋์๋ดค๋ค.
ํฌํธ ๋ฒํธ๊ฐ ์์ด๋ Nginx๊ฐ ์๋ฒ์ ํฌํธ ๋ฒํธ๋ฅผ ์ฐ๊ฒฐํด ์ฃผ๋ฏ๋ก ์ด์ ์์ด ์๋ฒ ํ์ด์ง๊ฐ ๋์จ๋ค.