프로그래밍 노트/인프라

[nginx] 가상호스트 설정(virtual host)

깡냉쓰 2020. 4. 14. 00:35
728x90
반응형

nginx에 가상호스트틀 설정해보자.
호스트 도메인은 corn-sample.com이다.

hosts 파일 수정

127.0.0.1 corn-sample.com
127.0.0.1 www.corn-sample.com

가상호스트 설정

가상호스트 파일은 별도의 디렉토리에 두는 것이 보기 좋으니 nginx conf 홈파일에 servers라는 디렉토리를 만들어서 nginx.conf파일에 servers 디렉토리 파일을 include하게 한다.

# /usr/local/etc/nginx/nginx.conf
http{
    ...
    include servers/*; # 가상호스트설정파일 경로 추가
}
# /usr/local/etc/nginx/servers/corn-sample.conf
server {
    listen 80;
    server_name www.corn-sample.com corn-sample.com;

    location / {
        root /usr/local/var/www/frontend;/ # vue js 경로
        index index.html;
    }

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root html;
    }
}

이렇게 설정한 후에 브라우저에 corn-sample.com에 접속하면 /usr/local/var/www/frontend/index.html이 정상적으로 뜨는것을 볼 수 있다.
그런데.. 문제는 127.0.0.1로 접속해도 해당 페이지가 뜬다는 것이다.
따라서 default 가상호스트를 설정해 주자

default 가상호스트 설정

# /usr/local/etx/nginx/servers/default.conf
server{
    listen 80 default;
    server_name _;

    location / {
        root /usr/local/var/www/default;
        index index.html;
    }
}

domain이 일치하지 않는 요청건은 /usr/local/var/www/default/index.html을 보여주게 된다.

728x90
반응형