2011-04-25 4 views
9

apache2에서 가상 호스트를 만들고 싶습니다. 그러나 소스 파일을/var/www 폴더 외부에 배치하고 싶습니다. 즉, 다른 문서 루트를 포함시켜야합니다. 구성 파일,하지만 아파치/사이트를 사용할 수있는/기본 파일을 편집하여 구현하지만 그 올바른 방법을 구현할 수 없다는 것을 알고, 그것을 구현하는 올바른 방법을 제안 할 수 있습니까?apache2에서 하나 이상의 문서 루트를 만드는 방법

감사와 관련하여

,

발라

답변

7

당신은 sites-available 폴더에 새 파일 (예를 들어, myvirtualhost)를 만든 다음 sites-enabled에 심볼릭 링크를 만들 수 있습니다. 파일과 심볼릭 링크는 어떤 이름이든 가질 수 있습니다. 새 가상 호스트 정의를 작성 새 파일 내부

:

<VirtualHost *:80> 
    DocumentRoot /path/to/your/webapplication 
    ServerName abc.local 
</VirtualHost> 

당신이이 .local의 도메인에 서버 이름을 설정하기에 충분 테스트를위한 로컬에만 응용 프로그램을 배포하는 경우 (예를 들어 abc.local를) 이 경우 /etc/hosts 파일을 편집하고 새 행을 추가해야합니다.

127.0.0.1 abc.local 

당신은 당신이 당신의 공급자 (예를 들어, webapplication.mydomain.com)에 유효한 DNS 이름을 등록했는지 확인해야 할 인터넷에서 새로운 가상 호스트를 사용할 수 있도록하려면

.

기본적으로 thats입니다. 그러나 가상 호스트 정의에 지시문을 추가하여 자원에 대한 액세스를 제어하려고 할 수 있습니다.

+0

omgod 왜 다른 답변은 호스트 파일이 미스테리라고 언급하지 않았는가? – Dheeraj

1

httpd.conf 파일 (conf 디렉토리에있는 apache 설정 파일)로 이동할 수 있습니다. 그리고 읽는 라인을 찾을 :

# Virtual hosts 
#Include conf/extra/httpd-vhosts.conf 

을 후 주석과 같이 두 번째 줄 :

# Virtual hosts 
Include conf/extra/httpd-vhosts.conf 

또한 conf의 foler에있는 당신의 "추가"폴더로 이동합니다. 당신은 지정된 파일 "아파치 - vhosts.conf"가 표시됩니다

편집 가상 호스트 샘플 파일 :

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot "...full path to you new root folder for this site...." 
    ServerName yourwebsite.com 
    ServerAlias www.yourwebsite.com 
    ErrorLog "logs/newpath.error.log" 
    CustomLog "logs/newpath.access.log" common 
</VirtualHost> 

그러나 이것은 매우 단순화 된 솔루션은 가상 호스트에 대한 자세한 참조하십시오, 그러나 가리켜 야입니다 너에게 올바른 방향으로 너

관련 문제