httpd-vhosts.conf
- IP 주소 하나에 여러 도메인을 사용하는 버추얼 호스트 설정할 때 사용하는 파일
- * 부분에 웹 서버로 사용 중인 IP 주소를 설정하고 항목에 맞게 기재하면 됨
- 이 파일을 사용하려면 httpd.conf 파일에서 두 곳을 활성화(# 주석 제거)해야 함
- LoadModule 항목에서 mod_vhost_alais.so
- Include 항목에서 httpd-vhosts.conf
기본 구성
- 도메인 하나당 하나의 <VirtualHost *:80>~</VirtualHost> 를 사용하면 됨
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/usr/local/apache/docs/dummy-host.example.com"
ServerName dummy-host.example.com
ServerAlias www.dummy-host.example.com
ErrorLog "logs/dummy-host.example.com-error_log"
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "/usr/local/apache/docs/dummy-host2.example.com"
ServerName dummy-host2.example.com
ServerAlias dummy-host2.example.com
ErrorLog "logs/dummy-host2.example.com-error_log"
CustomLog logs/dummy-host2.example.com-access_log common
</VirtualHost>
주요 항목 설명
- <VirtualHost *:80>~</VirtualHost>
- 가상 호스트를 지정하는 태그. *에 IP주소를 설정하고 가상 호스트 관련 설정을 함
- ServerAdmin webmaster@dummy-host.example.com
- 해당 도메인을 관리하는 관리자 이메일 주소를 적는 부분
- DocumentRoot "/usr/local/apache/docs/dummy-host.example.com"
- ServerName dummy-host.example.com
- ServerAlias www.dummy-host.example.com
- 지정한 기본 도메인 이외에 또 다른 호스트네임 도메인을 적을 때 사용. 조회하는 서브 도메인에 대하여 resolving 되어야 함. 보통 ServerName 항목과 연동해서 사용
- ServerName www.linux.co.kr
- ServerAlias linux.co.kr
- ErrorLog "logs/dummy-host.example.com-error_log"
- CustomLog logs/dummy-host.example.com-access_log common
- 접속 기록 등 일반적인 로그를 기록할 파일을 적음
사용 예
- 서버의 IP주소가 203.247.50.224, 주 도메인은 linux.com, 추가로 flower.co.kr 도메인을 사용하는 경우
<VirtualHost 203.247.50.224:80>
ServerAdmin posein@linux.com
DocumentRoot /usr/local/apache/htdocs
ServerName www.linux.com
ServerAlias linux.com
ErrorLog "logs/linux.com-error_log"
CustomLog "logs/linux.com-access_log" common
</VirtualHost>
<VirtualHost 203.247.50.224:80>
ServerAdmin flower@flower.co.kr
DocumentRoot "/home/flower/public_html"
ServerName www.flower.co.kr
ErrorLog "logs/flower.co.kr-error_log"
CustomLog "logs/flower.co.kr-access_log" common
</VirtualHost>
💡위치 / 옵션 찾기
버추얼 호스트 or 여러 도메인 or 추가 도메인
httpd-conf 파일 위치
- find / -name httpd.conf
- /usr/local/apache/conf/httpd.conf
httpd.conf 파일 내 활성화 항목
- cat /usr/local/apache/conf/httpd.conf | grep vhost 또는 egrep 'vhost' /usr/local/apache/conf/httpd.conf
- LoadModule vhost_alias_module modules/mod_vhost_alias.so
- Includ conf/extra/httpd-vhosts.conf
httpd-vhosts.conf 파일 위치
- find / -name httpd-vhosts.conf
- /usr/local/apache/conf/extra/httpd-vhosts.conf
httpd-vhosts.conf 파일 설정
- vi /usr/local/apache/conf/extra/httpd-vhosts.conf
- <VirtualHost 아이피:80>~</VirtualHost>
- ServerAdmin 관리자이메일
- DocumnetRoot "기본_웹문서_위치_디렉터리"
- ServerName 도메인
- ServerAlias 다른_호스트_네임_도메인
- ErrorLog 에러_로그_기록_파일
- CustomLog 일반_로그_기록_파일