본문 바로가기

Linux Server 구축/1-2. Web Server

Apache WebServer - Virtual Host - IP-based


Virtual Host 참고사항 : http://bban2.tistory.com/134

-----------------------------------------------------------------------------------------------------

Virtual Host - IP-based


1-1. Ethernet 카드에 IP 추가로 설정

[root@localhost ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0B:6A:DC:60:7B 
          inet addr:192.168.0.7  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::20b:6aff:fedc:607b/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3375 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3097 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:4107510 (3.9 MiB)  TX bytes:405069 (395.5 KiB)
          Interrupt:193 Base address:0xd400

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# ls
ifcfg-eth0   
[root@localhost network-scripts]# cp -p ifcfg-eth0 ifcfg-eth0:0
- 기존의 eth0의 설정을 이용해서 eth0:0을 설정한다.
[root@localhost network-scripts]# ls
ifcfg-eth0   ifcfg-eth0:0

[root@localhost network-scripts]# vi ifcfg-eth0:0
[root@localhost network-scripts]# cat ifcfg-eth0:0
# Silicon Integrated Systems [SiS] SiS900 PCI Fast Ethernet
DEVICE=eth0:0
BOOTPROTO=none
HWADDR=00:0B:6A:DC:60:7B
ONBOOT=yes
TYPE=Ethernet
IPADDR=10.10.33.3
USERCTL=no
IPV6INIT=no
PEERDNS=yes

-----------------------------------------------------------------------------------------------------

1-2. network 서비스 재시작

[root@localhost network-scripts]# service network restart
인터페이스 eth0 (을)를 종료 중:                            [  OK  ]
loopback 인터페이스를 종료 중:                             [  OK  ]
loopback 인터페이스를 활성화 중:                           [  OK  ]
eth0 인터페이스 활성화 중:                                 [  OK  ]

-----------------------------------------------------------------------------------------------------

1-3. Ethernet 카드 설정 확인

[root@
localhost network-scripts]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0B:6A:DC:60:7B 
          inet addr:192.168.0.7  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::20b:6aff:fedc:607b/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3384 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3144 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:4108761 (3.9 MiB)  TX bytes:414976 (405.2 KiB)
          Interrupt:193 Base address:0xd400

eth0:0    Link encap:Ethernet  HWaddr 00:0B:6A:DC:60:7B      - 하나의 LAN 카드에 2개의 IP가 적용되었다.
          inet addr:10.10.33.3  Bcast:10.10.33.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:193 Base address:0xd400

-----------------------------------------------------------------------------------------------------

1-4. Forward Zone 파일 설정

[root@localhost named]# pwd
/var/named/chroot/var/named
[root@localhost named]# vi dns.for - forward zone 파일을 수정한다.
$TTL    86400
@               IN SOA  bban2.co.kr. root.bban2.co.kr. (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
                IN NS           bban2.co.kr.
                IN A            192.168.0.7
www             IN A            192.168.0.7

www1            IN A            10.10.33.3 - www1.server3.co.kr 에 대한 IP설정

-----------------------------------------------------------------------------------------------------

1-5. DNS Server 서비스 재시작

[root@localhost named]# service named restart or rndc reload
named를 정지 중:                                           [  OK  ]
named를 시작 중:                                           [  OK  ]

- 참고
rndc reload : 구동중인 네임서버의 설정파일과 존파일을 다시 읽어 들여서 재적용한다.

-----------------------------------------------------------------------------------------------------

1-6. IP-based Virtual Host 설정


[root@localhost conf]# pwd
/etc/httpd/conf
[root@localhost conf]# vi httpd.conf

 989 #NameVirtualHost *:80
- IP-based 로 설정하기 때문에 이 설정은 주석처리 해준다.
- 이 설정은 Name-based Virtual Host로 설정할때 사용한다.

1028 <VirtualHost 10.10.33.3:80> - IP기반 가상 호스트 설정
1029     ServerAdmin root@bban2.co.kr
1030     DocumentRoot /www1
1031     ServerName www1.bban2.co.kr
1032 </VirtualHost>


-----------------------------------------------------------------------------------------------------

1-7. /www1 폴더 생성 - 이미 생성되어 있다면 생략해도 무관하다.

[root@localhost conf]# service httpd restart
httpd 를 정지 중:                                             [  OK  ]
httpd (을)를 시작 중: Warning: DocumentRoot [/www1] does not exist         [  OK  ]

- 서비스 재시작을 하면 /www1 폴더에 대해서 경고가 뜬다.
Apache 환경설정에서 DocumentRoot /www1 라고 웹문서의 디렉토리를 지정했는데 폴더를 생성하지 않아 경고가 뜨게 된 것이다.

1020 <VirtualHost 10.10.33.3:80>
1021     ServerAdmin root@bban2.co.kr
1022     DocumentRoot /www1
1023     ServerName www1.bban2.co.kr
1024 </VirtualHost>


/www1 폴더 생성

[root@localhost ~] cd / 
[root@localhost /]# mkdir /www1
[root@localhost /]# cd www1
[root@localhost www1]# vi index.html
[root@localhost www1]# cat index.html
Hello!!
Here's www1.bban2.co.kr
Nice to meet you!!

-----------------------------------------------------------------------------------------------------

1-8. httpd 서비스 재시작

[root@localhost conf]# service httpd restart
httpd 를 정지 중:                                          [  OK  ]
httpd (을)를 시작 중:                                      [  OK  ]

-----------------------------------------------------------------------------------------------------

1-9. 웹브라우저에서 test1 홈페이지 확인

[root@localhost ~]# host www.bban2.co.kr
www.bban2.co.kr has address 192.168.0.7
[root@localhost ~]# host www1.bban2.co.kr
www1.bban2.co.kr has address 10.10.33.3