nginx 사용하기 (Node.js / Tomcat 등 서버와 연동)

Node.js/Tomcat에서 앱이 이미 실행 중이라 가정

이 글에서는 하나의 서버 연동만을 다룬다. 여러 서버를 연동하고 싶으면 아래 글을 참고
(nginx에 여러 서버, 여러 도메인(Subdomain) 연동하기 (+ ssl 적용))

1. Install nginx

apt-get install nginx

2. nginx 설정 변경

Configuration 파일: /etc/nginx/sites-available/default
server {
	listen 80 default_server;
	listen [::]:80 default_server;

    root [[root directory]];
    server_name _;

    location / {
            # First attempt to serve request as file, then
            # as directory, then fall back to displaying a 404.
            try_files $uri $uri/ =404;
            proxy_pass [[http://IP주소:port]];
    }

}

port는 따로 수정하지 않았다면 Node.js의 기본값은 3000, Tomcat의 기본값은 8080이다.

3. nginx 재시작

Node.js를 실행하고 nginx를 재시작

/etc/init.d/nginx restart

80포트로 접속하면 proxy_pass에 적어둔 주소로 가지는 것을 확인할 수 있다.

4. nginx 관련 기타

nginx 상태 확인: status nginx.service or nginx -t

nginx 로그 위치: /var/log/nginx


아래는 예제 설정 파일


1. 가정 조건

Apple Service

Server: Nginx
Port: 3000
Domain: fruit.com www.fruit.com
Root Directory: /var/html/www/apple

2. Example

/etc/nginx/sites-available/default
server {
	listen 80 default_server;
	listen [::]:80 default_server;

    root /var/html/www/apple;
    server_name fruit.com www.fruit.com;

    location / {
            # First attempt to serve request as file, then
            # as directory, then fall back to displaying a 404.
            try_files $uri $uri/ =404;
            proxy_pass http://localhost:3000;
    }

}

답글 남기기