티스토리 뷰

1. 이름 기반의 버추얼 호스트

1개의 IP에 2개의 도메인을 쓰는 경우 NameVirtualHost 지시자를 사용해야 한다.

ex) 192.168.123.2에 www.butterthlies.com과 sales.butterthlies.com 2개를 쓰고 싶은 경우

NameVirtual Host 192.168.123.2

<VirtualHost www.butterthlies.com>

ServerAdmin sales@butterthlies.com

DocumentRoot /usr/www/site.virtual/htdocs/customers

ServerName www.butterthlies.com

ErrorLog /usr/www/site.virtual/name-based/logs/error_log

CustomLog ...

</VirtualHost>

<VirtualHost sales.butterthlies.com>

ServerAdmin sales@butterthlies.com

DocumentRoot /usr/www/site.virtual/htdocs/salesmen

ServerName sales.butterthlies.com

ErrorLog /usr/www/site.virtual/name-based/logs/error_log

CustomLog ...

</VirtualHost>

※NameVirtualHost   IP주소[:포트]

이름 기반의 Virtual Host를 쓴다는 의미의 지시자로 클라이언트로부터 NameVirtualHost로 설정된 IP:포트로 접속요청을 받으면 VirtualHost부분 중 매칭되는 도메인으로 연결해 주는 역할을 한다.

*:80 은 :80 80번포트로 들어오는 * (모든 IP요청)에 대하여가상호스트를 수행한다는 것이다. mod_ssl을 이용한 SSL을 사용할 것이라면 포트번호를 :443 과 같이 적용해야 한다. httpd -S 옵션으로 가상호스트 설정에 대한 점검을 할 수 있다. 


2. IP 기반의 버추얼 호스트

HTTP/1.1 이전의 방식으로 지금은 거의 사용하지 않는 방식이다.

<VirtualHost 192.168.123.2>

ServerName www.butterthlies.com

ServerAdmin sales@butterthlies.com

DocumentRoot /usr/www/site.virtual/htdocs/customers

ErrorLog /usr/www/site.virtual/name-based/logs/error_log

CustomLog ...

</VirtualHost>

<VirtualHost 192.168.123.3>

ServerName sales.butterthlies.com

ServerAdmin sales@butterthlies.com

DocumentRoot /usr/www/site.virtual/htdocs/salesmen

ErrorLog /usr/www/site.virtual/name-based/logs/error_log

CustomLog ...

</VirtualHost>


3. 이름/IP 혼합 버추얼 호스트

위의 두가지를 혼합한 방식으로 NameVirtualHost로 지정되어 있는 <VirtualHost>부분은 이름 기반으로, 그외에는 IP기반으로 작동함

NameVirtual Host 192.168.123.2

<VirtualHost www.butterthlies.com>

ServerAdmin sales@butterthlies.com

DocumentRoot /usr/www/site.virtual/htdocs/customers

ServerName www.butterthlies.com

ErrorLog /usr/www/site.virtual/name-based/logs/error_log

CustomLog ...

</VirtualHost>

<VirtualHost sales.butterthlies.com>

ServerAdmin sales@butterthlies.com

DocumentRoot /usr/www/site.virtual/htdocs/salesmen

ServerName sales.butterthlies.com

ErrorLog /usr/www/site.virtual/name-based/logs/error_log

CustomLog ...

</VirtualHost>

<VirtualHost 192.168.123.3>

ServerName sales.butterthlies.com

ServerAdmin sales@butterthlies.com

DocumentRoot /usr/www/site.virtual/htdocs/salesmen

ErrorLog /usr/www/site.virtual/name-based/logs/error_log

CustomLog ...

</VirtualHost>


4. 포트 기반의 버추얼 호스트

Listen 80

Listen 8080

<VirtualHost 192.168.123.2:80>

ServerName www.butterthlies.com

ServerAdmin sales@butterthlies.com

DocumentRoot /usr/www/site.virtual/htdocs/customers

ErrorLog /usr/www/site.virtual/name-based/logs/error_log

CustomLog ...

</VirtualHost>

<VirtualHost 192.168.123.2:8080>

ServerName sales.butterthlies.com

ServerAdmin sales@butterthlies.com

DocumentRoot /usr/www/site.virtual/htdocs/salesmen

ErrorLog /usr/www/site.virtual/name-based/logs/error_log

CustomLog ...

</VirtualHost>


이렇게 Listen지시자를 쓰면 해당 포트를 아파치가 감시하도록 함 따라서 위와 같이 설정한 경우 http://www.butterthlies.com으로 접속한 경우 80번 포트로 접속하지만 http://www.butterthlies.com:8080으로 접속한다면 밑의 도메인으로 접속됨


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함