[nginx] 포트별 도메인을 달아보자.

florentyoon·2023년 1월 8일
0

Nginx

목록 보기
1/2

nginx는 다중 포트 연결할수 있는 기능을 제공한다.

우선 nginx의 설정파일을 접속한다.
ubuntu에 nginx를 설치했기 때문에 설정파일 위치는 아래였다.

$ sudo vim /etc/nginx/sites-available/default 

기본 설정은 아래와 같이 되있다.

server {
        listen 80 default_server;
        listen [::]:80 default_server;
	
   		root /usr/share/nginx/html/florentyoon/public;
 	    
        index index.html index.htm index.nginx-debian.html index.php;
 		
        location / {
               try_files $uri $uri/ =404;
        }

nginx에서 포트를 추가하는 방법은 간단하다.

server {
        listen 81 default_server;
        listen [::]:81 default_server;
        
        root /var/www/html;

        index index.html index.htm index.nginx-debian.html index.php;
        server_name _;

        location / {
                try_files $uri $uri/ =404;
        }
}

아래에다 하나 더 만들어주는 것이다.
81포트로 작성했고 root는 다른 경로를 지정했다.

:wq로 닫아준 후
먼저 설정파일에 오류가 있는지 확인한다.

$ nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

이상없으니 nginx를 재실행한다.

$ sudo systemctl restart nginx

그리고 포트 상태를 확인한다.

$ netstat -tulpn

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      52141/nginx: master
tcp        0      0 0.0.0.0:81              0.0.0.0:*               LISTEN      52141/nginx: master

두 개가 잘 돌고있는 것이 보인다.

이제 route53에서 내가 사용하는 도메인을 통해 접속이 되는지 확인해본다.

http://app.florentyoon.com/ => 80포트일때
http://app.florentyoon.com:81/ => 81포트일때

하지만 시간초과가 뜬다.
왜냐면 lightsail에서 81포트에 대해 안열어줘서 그렇다.

80과 81을 열어준다.
다시 접속해보면 된다.

찾아보니 route53은 80포트를 기본 도메인으로 쓰고 있어서 다른 포트를 허용하려면 로드밸런싱과 포트포워딩을 해줘야 한다.

이 부분에 대한 학습을 이어서 해야 한다.

profile
florentyoon의 IT 세상

0개의 댓글