Nginx에서 서브도메인 만드는 방법

| 2014. 2. 2. 14:00

너무 대수롭지 않은 과제이긴 하지만 그 대수롭지 않은 일마저 제대로 된 한글 컨텐츠의 부재로 고생하고 있을, 아주 희귀한 그 사람들을 위해 블로그에 메모를 해두기로 했다. 확실하지는 않지만 ㅡ 왜냐하면 기존의 Apache 서버에서는 내가 직접 서브도메인을 만들 일이 없었기 때문에 ㅡ Apache에서도 거의 비슷한 방법으로 적용이 될 것이다. 만약 그렇다면 굳이 Nginx용 컨텐츠를 만드는 이유는 무엇이냐고? 매우 희귀하겠지만 나처럼 아무것도 모르는 초심자에겐 Nginx와 Apache의 서브도메인 구현 방법이 아예 다를 것이라고 느껴지기 때문이다.

리눅스 서버 기준으로 Nginx의 설정 파일들은 /etc/nginx 디렉토리에 위치해 있다. 서브도메인과 관련된 항목은 이 중에서도 sites-enabled라는 디렉토리 안의 default라는 파일과 밀접한 관련이 있는 것 같다. 파일을 열고 입맛에 맞게 다음과 비슷한 설정을 추가한다.

server {
        listen 80;
        server_name SUBDOMAIN.test.com;
        root /home/path/to/your/subdomain;
        index index.php;

        location / {
                try_files $uri $uri/ /index.php;
        }
}

마지막으로 가장 중요한 스텝은, 새롭게 바꾼 설정을 적용하기 위해 Nginx 서버를 재시작하는 것이다. 사실 이렇게까지 별 내용도 없는 포스팅을 하는 이유는 매번 여기서 실수를 하는 바람에 이리저리 기웃거리다가 서버를 재시작하는 일을 반복했기 때문이다. Nginx 서버를 재시작하면 모든 것이 깔끔하게 마무리된다.

문제가 있다면 대부분이 위 서버 설정일 텐데 자세한 내용은 구글을 참고하도록 하자.

구글을 잘 쓰면 더욱 똑똑해질 수 있을 것이다.