apache에서 virtual host 설정으로 여러대의 웹서버가 있는 것처럼 구성하는 방법

웹서버는 한 대 뿐인데, 몇 개의 웹페이지를 서비스해야하는 경우가 있다.

예를 들면, 흔하디 흔한 1년 운영비가 딸랑 1만원인 1GB 하드용량의 홈페이지 서버들.

요즘은 서버의 하드디스크가 몇 TB단위이다. 1TB라고 가정하자. 1TB면 1GB의 1000배다. 1만원씩 1천명에게 받으면 1천만원이다.
우리집의 하드디스크가 2TB이므로 그 웹서버에는 수십TB의 하드디스크가 있을테고, 1년간 도대체 얼마나 벌어들이는 것일까?

아무튼, 여기에서 설명하는 방법으로 Apache 웹서버 한 대를 이용해서 이런 서비스 환경을 구성할 수 있다.


1. 사용자들을 위한 폴더를 생성한다.

    mkdir /var/www/user1
    mkdir /var/www/user2
    mkdir /var/www/user3



2. default라는 파일을 다음과 같이 수정한다.

    vi /etc/apache2/sites-available/default

    <VirtualHost *:80>
            ServerAdmin user1@daum.net
            DocumentRoot /var/www/user1
            ServerName user1.co.kr
            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combined
            LogLevel warn
    </VirtualHost>
    <VirtualHost *:80>
            ServerAdmin user2@gmail.com
            DocumentRoot /var/www/user2
            ServerName user2.com
            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combined
            LogLevel warn
    </VirtualHost>
    <VirtualHost *:80>
            ServerAdmin user3@empal.com
            DocumentRoot /var/www/user3
            ServerName user3.or.kr
            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combined
            LogLevel warn
    </VirtualHost>



3. 서버를 재시작 시킨다.

    service apache2 restart