[Linux] Virtual Host 설정하기
이번 시간에는 현재 Ubuntu에서 설정한 서버에서
Virtual Host를 설정하는 방법을 알아보자.
| Virtual Host란 ?
Virtual Host는 하나의 서버에서 한 개의 사이트 (Main host)외에 다른 여러 개의 웹 사이트를 서
비스 할 수 있도록 하는 것이다.
| Virtual Host 방식
Virtual Host를 설정하는 방법에는 두 가지가 있다.
1. Name-based Virtual Host
2. IP- based Virtual Host 이다.
| Name-based Virtual Host
Name-based Virtual Host는 말 그대로 이름을 기반으로 Virtual Host를 설정하는 방식이다.
즉, IP는 같지만 이름을 달리하여 설정하는 방식이다.

순서
Step 1. 새 웹 사이트를 위한 폴더 및 파일(index.html) 생성
ex) /home/userid/www/html/index.html
Step 2. 새 사이트를 위한 Virtual Host 설정
/etc/apache2/sites-available 위치에 .conf 파일 생성 및 설정
ex) sapp.edu.conf

ServerName - 설정하고 싶은 도메인 이름
DocumentRoot - 도메인의 Home directory path
Step 3. 새로운 VirtualHost 설정파일 등록
- /etc/hosts 에 IP와 Domain 등록
$ a2ensite sapp.god.edu.conf
-> .conf 파일을 등록하면 된다.
Step 4. 홈 디렉토리 접근 권한 설정
/etc/apache2/apache2.conf 파일에 들어간다.
/Directory 검색 후 다음 과같은 구문을 추가한다.

Directory 안에는 홈 디렉토리의 path를 입력하면 된다.
Step 5. Apache2 Restart
$ systemctl reload apache2
| IP - based Virtual Host
IP - based는 서로 다른 IP를 설정하여 각각 다른 이름으로 사용하거나
혹은 같은 IP에서 포트 번호를 다르게 하여 다른 사이트로 접근하도록 하는 것이다.

순서
순서는 대부분 Name-based와 동일하다.
대신에 Port Number로 설정할 때에는 몇 가지 옵션을 추가해야한다.
먼저, /etc/apache2/ports.conf 로 가서

다음과 같이 80번 포트 외에 열어줄 포트 Number를 추가해 준다. (예시는 8000과 8080).
그리고 추가로 포트를 열어줄 도메인.conf 를 열어서 다음과 같이 추가 해준다.
<VirtualHost *:80>
DocumentRoot /var/www/omeka-A ------> 기존에 있던 home directory
</VirtualHost>
<VirtualHost *:8081>
DocumentRoot /var/www/omeka-B ------> 새로 추가할 home directory, 포트번호 추가
</VirtualHost>
똑같이 apache2를 restart 해주면 완료!
댓글
댓글 쓰기