Linux Server - Apache 실습 (3 / 4) : vhosts (가상호스트) - 하나의 컴퓨터에서 여러 ip로 홈페이지 출력
▣ Apache
◎ 가상 호스트
가상 호스트는 외부에서 보기에 하나의 컴퓨터인지 모른다.
하지만 치명적인 단점이 존재 : 부여 받을 수 있는 ip의 수는 한정적이다.
현재는 이러한 단점 때문에 사용하지 않는다.
- 사용법
1. 퍼미션이 있어야한다.
2. 디렉토리가 존재하여야한다.
3. 디렉토리의 하위에 index.html이 존재해야한다.
※ 2, 3번째 227, 228번 ip를 사용
실습 1) IP 기반 Virtual Host 생성
실습 2) 두 개의 가상호스트에 DNS 서버를 이용해 도메인 명을 부여
◎ 실습 1) IP 기반 Virtual Host
1. /app/apache/conf/httpd.conf 파일을 수정

2. 유저 계정 생성 및 디렉토리 Other 권한 부여
1) #useradd -g 600 -u 604 httpd
-httpd 계정의 홈 디렉토리에서
2) #mkdir 227 - 두 번째 아이피
3) #mkdir 228 - 세 번째 아이피
4) #vi ./227/index.html - 생성 후 텍스트 입력
5) #vi ./228/index.html - 생성 후 텍스트 입력
6) 권한 부여
# chmod o+rx ./ - 홈 디렉토리의 other권한 부여
3. 가상 호스트를 설정하기 위해서는 해당 아이피의 가상 랜카드를 설정해주어야 함.
1) cd /etc/sysconfig/network-scripts - 랜 카드 정보가 담겨있는 디렉토리로 이동
2) 2개의 가상 아이피를 추가하므로 2개의 가상 랜카드를 추가 (ip는 컴퓨터당 1개!)
#cp -arpf ifcfg-eth0 ifcfg-eth0-1 (ip는 227)
#cp -arpf ifcfg-eth0 ifcfg-eth0-2
- 위와 같은 양식으로 수정 (ip는 228로)
4. network 서비스와 apache 서비스 재시작
#service network restart
- 사용중인 ip로 설정하였다면 충돌이 발생한다
#/app/apache/bin/apachectl restart
5. 결과 확인
- 227 웹페이지

- 228 웹페이지
◎ 가상 호스트
가상 호스트는 외부에서 보기에 하나의 컴퓨터인지 모른다.
하지만 치명적인 단점이 존재 : 부여 받을 수 있는 ip의 수는 한정적이다.
현재는 이러한 단점 때문에 사용하지 않는다.
- 사용법
1. 퍼미션이 있어야한다.
2. 디렉토리가 존재하여야한다.
3. 디렉토리의 하위에 index.html이 존재해야한다.
※ 2, 3번째 227, 228번 ip를 사용
실습 1) IP 기반 Virtual Host 생성
실습 2) 두 개의 가상호스트에 DNS 서버를 이용해 도메인 명을 부여
◎ 실습 1) IP 기반 Virtual Host
1. /app/apache/conf/httpd.conf 파일을 수정
2. 유저 계정 생성 및 디렉토리 Other 권한 부여
1) #useradd -g 600 -u 604 httpd
-httpd 계정의 홈 디렉토리에서
2) #mkdir 227 - 두 번째 아이피
3) #mkdir 228 - 세 번째 아이피
4) #vi ./227/index.html - 생성 후 텍스트 입력
5) #vi ./228/index.html - 생성 후 텍스트 입력
6) 권한 부여
# chmod o+rx ./ - 홈 디렉토리의 other권한 부여
3. 가상 호스트를 설정하기 위해서는 해당 아이피의 가상 랜카드를 설정해주어야 함.
1) cd /etc/sysconfig/network-scripts - 랜 카드 정보가 담겨있는 디렉토리로 이동
2) 2개의 가상 아이피를 추가하므로 2개의 가상 랜카드를 추가 (ip는 컴퓨터당 1개!)
#cp -arpf ifcfg-eth0 ifcfg-eth0-1 (ip는 227)
#cp -arpf ifcfg-eth0 ifcfg-eth0-2
- 위와 같은 양식으로 수정 (ip는 228로)
4. network 서비스와 apache 서비스 재시작
#service network restart
- 사용중인 ip로 설정하였다면 충돌이 발생한다
#/app/apache/bin/apachectl restart
- 227 웹페이지
- 228 웹페이지
◎ +추가 실습)
- 기존 방식의 유저 계정 디렉토리의 하위에 만들었던 html 파일을 "/httpd/(ip번호)/"
디렉토리의 하위로 통합하여 webmaster 계정으로 수정이 가능하게 바꿔봅시다.
1) "/httpd/227" 와 "/httpd/228" 디렉토리를 생성한다.

2) "/httpd" 디렉토리의 소유자 권한을 webmaster(유저):web(그룹) 으로 수정해준다.

3) su 명령어로 webmaster로 이동
# su - webmaster
4) webmaster 계정으로 index 파일을 수정해보자
- 성공한 예제의 바른 예

◎ 실습 2) 두 개의 가상호스트에 DNS 서버를 이용해 도메인 명을 부여
- 준비물 : DNS Server (.230)
1) /etc/named.conf 수정

2) /var/named/ast008.zone 생성

3) /var/named/ast008-1.zone 생성

4) #service named restart

5) 확인해봅시다.
- 기존 방식의 유저 계정 디렉토리의 하위에 만들었던 html 파일을 "/httpd/(ip번호)/"
디렉토리의 하위로 통합하여 webmaster 계정으로 수정이 가능하게 바꿔봅시다.
1) "/httpd/227" 와 "/httpd/228" 디렉토리를 생성한다.
2) "/httpd" 디렉토리의 소유자 권한을 webmaster(유저):web(그룹) 으로 수정해준다.
3) su 명령어로 webmaster로 이동
# su - webmaster
4) webmaster 계정으로 index 파일을 수정해보자
- 성공한 예제의 바른 예
◎ 실습 2) 두 개의 가상호스트에 DNS 서버를 이용해 도메인 명을 부여
- 준비물 : DNS Server (.230)
1) /etc/named.conf 수정
2) /var/named/ast008.zone 생성
3) /var/named/ast008-1.zone 생성
4) #service named restart
5) 확인해봅시다.
댓글
댓글 쓰기