개발을 하다보면 가상호스트를 사용할 일이 많다.
주로 localhost 로 작업한 후 서버에 올리는게 보통인데...
프로젝트가 여러개 일경우 가상호스트가 필요하다.
가상호스트의 종류에는 이름기반 가상호스트와 포트기반 가상호스트가 있다.
이름기반은 하나의 아이피에 도메인1, 도메인2 이런식으로 이름을 지정해 주는것을 말한다.
그런데 이름기반 가상호스트를 사용하기 위해서는 윈도우의 경우 hosts 파일을 수정해야 한다. ( 불편해... )
하지만 포트기반 가상호스트는 아파치 환경설정만 수정해주면 되므로 이름기반보다는 덜 불편하다.
그러면 포트기반 가상호스트를 적용하는 법을 살펴보자
httpd.conf 파일에서 가상호스트 설정 파일을 include 하도록 주석을 처리한다.
# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
위 부분을
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
이렇게 변경한다. ( 맨 앞의 주석만 해제한다 )
그리고 가상호스트 설정파일을 수정한다.
가상호스트 설정파일은 "아파치디렉토리/conf/extra/httpd-vhosts.conf" 파일이다.
httpd-vhosts.conf 파일을 수정한다.
Listen 80
Listen 5050
#NameVirtualHost *:80
#NameVirtualHost *:5050
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "C:/dev/workspace/php/localhost1"
ServerName localhost
ErrorLog "logs/localhost1-error.log"
CustomLog "logs/localhost1-access.log" common
</VirtualHost>
<VirtualHost *:5050>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "C:/dev/workspace/php/localhost2"
ServerName localhost
ErrorLog "logs/localhost2-error.log"
CustomLog "logs/localhost2-access.log" common
</VirtualHost>
위와 같이 가상호스트 설정을 한 후 확인을 해본다.
원하는 결과가 나오지 않았다.
이유는 아파치 2.4 이후부터는 가상호스트 설정에 <directory> 설정을 해주어야 한다.
가상호스트 설정을 다시 수정한다.
Listen 80
Listen 5050
#NameVirtualHost *:80
#NameVirtualHost *:5050
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "C:/dev/workspace/php/localhost1"
ServerName localhost
ErrorLog "logs/localhost1-error.log"
CustomLog "logs/localhost1-access.log" common
<Directory "c:/dev/workspace/php/localhost1">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:5050>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "C:/dev/workspace/php/localhost2"
ServerName localhost
ErrorLog "logs/localhost2-error.log"
CustomLog "logs/localhost2-access.log" common
<Directory "c:/dev/workspace/php/localhost2">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
설정을 수정후 다시 확인해 본다.
원하는 대로 포트기반 가상호스트 결과가 잘 나온다...
'컴퓨터관련' 카테고리의 다른 글
HtmlUnit ErrorLog 안보이게 설정하기 (0) | 2019.03.14 |
---|---|
python 이용하여 로또 사이트 크롤링 - 당첨정보 가져오기 및 분석 (0) | 2019.03.06 |
python 이용하여 공공DataPortal 제공서비스 목록 파일로 저장하기(beautifulsoup, selenium 이용) (0) | 2019.02.27 |
정규표현식... (0) | 2017.09.07 |
chmod 디렉토리만 또는 파일만 지정하기(하위디렉토리 포함) (0) | 2017.02.11 |