Nginx๋?
NginX๋?
์น ์๋ฒ ์ํํธ์จ์ด๋ก, ๊ฐ๋ฒผ์๊ณผ ๋์ ์ฑ๋ฅ์ ๋ชฉํ๋ก ํ๋ค. ์น ์๋ฒ, ๋ฆฌ๋ฒ์ค ํ๋ก์ ๋ฐ ๋ฉ์ผ ํ๋ก์ ๊ธฐ๋ฅ์ ๊ฐ์ง๋ค.
Nginx๋ ์์ฒญ์ ์๋ตํ๊ธฐ ์ํด ๋น๋๊ธฐ ์ด๋ฒคํธ ๊ธฐ๋ฐ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋ฉฐ, ์ด๋ ์ํ์น HTTP ์๋ฒ์ ์ค๋ ๋/ํ๋ก์ธ์ค ๊ธฐ๋ฐ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋ ๊ฒ๊ณผ๋ ๋์กฐ์ ์ด๋ค. ์ด๋ฌํ ๊ตฌ์กฐ๋ ์๋ฒ์ ๋ง์ ๋ถํ๊ฐ ์๊ธธ ๊ฒฝ์ฐ์ ์ฑ๋ฅ์ ์์ธกํ๊ธฐ ์ฝ๊ฒ ํด์ค๋ค.
์ถ์ฒ: [์ํค๋ฐฑ๊ณผ]
๊ฐ๋จํ๊ฒ ๋งํ๋ฉด ๊ฒฝ๋ ์น ์๋ฒ์ด๋ฉฐ, ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ์์ฒญ์ ๋ฐ์์ ๋ ์์ฒญ์ ๋ง๋ ์ ์ ํ์ผ์ ์๋ตํด์ฃผ๋ HTTP Web Server๋ก ํ์ฉ๋๊ธฐ๋ ํ๊ณ , Reverse Proxy Server๋ก ํ์ฉํ์ฌ WAS ์๋ฒ์ ๋ถํ๋ฅผ ์ค์ผ ์ ์๋ ๋ก๋ ๋ฐธ๋ฐ์๋ก ํ์ฉ๋๊ธฐ๋ ํ๋ค.
๋ณธ์ธ์ React๋ฅผ Nginx๋ก ๋ฐฐํฌํ๊ธฐ์ ๊ฐ๋จํ Nginx์ ๊ฐ๋ ์ ์ ๋ฆฌํด๋ณด๊ณ , ์ค์น๋ฅผ ์์ํ๋ค.
๊ฐ๋ฐํ๊ฒฝ: MacOS (m1)
NGINX ์ค์นํ๊ธฐ
์๋ ๋ฐฉ๋ฒ์ผ๋ก NGINX๋ฅผ ์ค์นํ๊ธฐ ์ brew ํจํค์ง ๊ด๋ฆฌ์๊ฐ ์ค์น๋์ด ์์ด์ผ ํ๋ค.
๋ณธ์ธ์ ์ด๋ฏธ brew๊ฐ ์ค์น๋์ด ์์ด ๋ฒ์ ํ์ธ์ผ๋ก ํ์ธ๋ง ํ๊ณ nginx ์ค์น๋ฅผ ์์ํ๋ค.
brew๋ฅผ ์ด์ฉํด nginx๋ฅผ ์ค์นํ๊ธฐ ๋๋ฌธ์ brew๊ฐ ์ค์น๋์ด ์์ง ์๋ค๋ฉด, ๋ฏธ๋ฆฌ ์ค์นํ๊ณ ์งํํ๋ฉด ๋ ๊ฒ์ด๋ค.
- Homebrew ๋ฒ์ ํ์ธ
brew -v
- nginx ์ค์นํ๊ธฐ
brew install nginx
→ brew๋ฅผ ์ด์ฉํด NginX๋ฅผ ์ค์นํ๋ค.
nginx.conf ํ์ผ ๊ฒฝ๋ก ํ์ธํ๊ธฐ
brew info nginx
→ brew info ${package๋ช }: ํด๋น ํจํค์ง๊ฐ ์ด๋ ์์น์ ์ค์น๋์ด ์๋ ์ง ํ์ธ ๊ฐ๋ฅํ๋ค.
์ค์น๋์ด ์๋ ๊ฒฝ์ฐ ์๋์ ๊ฐ์ด ์ ๋ณด๋ฅผ ํ์ธํ ์ ์๋ค.
nginx: stable 1.21.6, HEAD
HTTP(S) server and reverse proxy, and IMAP/POP3 proxy server
<https://nginx.org/>
/opt/homebrew/Cellar/nginx/1.21.6_1 (26 files, 2.2MB) *
Poured from bottle on 2022-04-13 at 14:30:40
From: <https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/nginx.rb>
License: BSD-2-Clause
==> Dependencies
Required: openssl@1.1 โ, pcre2 โ
==> Options
--HEAD
Install HEAD version
==> Caveats
Docroot is: /opt/homebrew/var/www
The default port has been set in /opt/homebrew/etc/nginx/nginx.conf to 8080 so that
nginx can run without sudo.
nginx will load all files in /opt/homebrew/etc/nginx/servers/.
To restart nginx after an upgrade:
brew services restart nginx
Or, if you don't want/need a background service you can just run:
/opt/homebrew/opt/nginx/bin/nginx -g daemon off;
==> Analytics
install: 39,803 (30 days), 123,899 (90 days), 485,441 (365 days)
install-on-request: 39,713 (30 days), 123,684 (90 days), 484,435 (365 days)
build-error: 24 (30 days)
๋งฅ ๋ฒ์ ์ด๋ ์ํฉ์ ๋ฐ๋ผ ์ค์น ์์น๊ฐ ๋ค๋ฅผ ์ ์์ผ๋, ์ค์ค๋ก ํ์ธํด๋ณด๋ ๊ฒ์ด ์ ์ผ ์ ํํ๋ค.
๋ณธ์ธ์ ๊ฒฝ์ฐ์๋
/opt/homebrew/etc/nginx/nginx.conf
์ conf ํ์ผ์ด ์์นํด ์๋ค.
nginx.conf ํ์ผ ์์
์๋ ์ฝ๋๋ฅผ ํตํด nginx.conf ํ์ผ์ ์์ ํ ์ ์๋ค.
(password๋ฅผ ์๊ตฌํ๋ ๊ฒฝ์ฐ ์ปดํจํฐ ๋น๋ฐ๋ฒํธ๋ฅผ ์ ๋ ฅํ๋ฉด ๋๋ค.)
sudo vim /opt/homebrew/etc/nginx/nginx.conf
nginx.conf ํ์ผ์ ํ์ธ ํ๋ฉด server ๋ถ๋ถ์ด ์ค์ ๋์ด ์๋ค.
server {
listen 8080;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
#error_page 404 /404.html;
- ๊ธฐ๋ณธ ํฌํธ๋ฅผ ๋ณ๊ฒฝํ๊ณ ์ถ๋ค๋ฉด
listen 80;
์์ ๊ฐ์ด ์ํ๋ ํฌํธ๋ก ์์ ์ด ๊ฐ๋ฅํ๋ค.
- root html์ ์น ๋ฃจํธ ๋๋ ํ ๋ฆฌ์ ์ฌ๋ณผ๋ฆญ ๋งํฌ์ด๋ฉฐ ๊ฐ์ธ์ฉ์ผ๋ก ์ฌ์ฉํ๋ค๋ฉด ๋ฃจํธ ๋๋ ํฐ๋ฆฌ ์ค์ ์ ๋ณ๊ฒฝํ๋ ๊ฒ๋ณด๋ค ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๊ทธ๋๋ก ๊ฐ์ ธ์์ ์ฌ์ฉํ๋ ค๋ฉด ์๋์ ๊ฐ์ด ์ด์ฉํ๋ค.
# ์ ๊ทผํ๊ธฐ ์ฝ๊ณ , ์ํ๋ ๋๋ ํ ๋ฆฌ์์ ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์์ฑ.
ln -s /opt/homebrew/var/www [๋งํฌ ์ด๋ฆ]
Homebrew๋ก ๋ฐฑ๊ทธ๋ผ์ด๋ ์๋น์ค ๊ด๋ฆฌ
brew services # ์๋์ผ๋ก homebrew/services๋ฅผ tap, ํ์ฌ ์ค์น๋ ์๋น์ค ๋ชฉ๋ก ํ์ธ
brew services [run|start|stop|restart|cleanup] service_name # ๋ช
๋ น์ด
# run - ์์ํ๋, ์์ํ๋ก๊ทธ๋จ์ผ๋ก ๋ฑ๋กํ์ง ์์
# start - ์์ํ๊ณ ์์ํ๋ก๊ทธ๋จ์ผ๋ก ๋ฑ๋ก
brew services start nginx # nginx ์์
homebrew services๋ฅผ ์ด์ฉํ๋ฉด ์ฝ๊ฒ ๋ฐฑ๊ทธ๋ผ์ด๋ ์๋น์ค๋ฅผ ๊ด๋ฆฌํ ์ ์๋ค.
conf ํ์ผ ์์ ์ ์๋ฃํ๋ค๋ฉด ์๋ ๋ช ๋ น์ด๋ก nginx๋ฅผ ์ฌ์์ ํ ์ ์๋ค.
brew service restart nginx
NGINX ๋ช ๋ น์ด
# ์์
nginx
# ์ค์ง
nginx -s stop
# ์ฌ์์
nginx -s reload
Reference
https://ko.wikipedia.org/wiki/Nginx
https://icarus8050.tistory.com/57
https://jehwanyoo.net/2021/04/06/mac-NGINX-Tutorial-1-NGINX-์ค์น/
์ฐธ๊ณ ์ผ์ (2022.04.13)
'Study' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[MySQL] MySQL safe mode ํด์ - Error Code : 1175 (0) | 2022.07.29 |
---|---|
[React] CORS ์ค๋ฅ (0) | 2022.03.13 |
[React] ์ ๋ ๊ฒฝ๋ก ์ค์ ํ๊ธฐ (0) | 2022.03.02 |
[IntelliJ] (Springboot) jsp ๋ณ๊ฒฝ ํ ์ฆ์ ๋ฐ์ ํด๊ฒฐ ๋ฐฉ๋ฒ (0) | 2022.02.04 |
[Intellij] Intellij ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ถ๊ฐํ๊ธฐ(Mac, Maven) (0) | 2022.01.25 |
๋๊ธ