2013-11-10 10 views
1

필자는이 작업을 수행하는 방법과 관련한 기사를 찾고 있었지만 자세한 세부 지침을 찾고 있습니다. 나는 이것에 관한 많은 정보가 있다는 것을 알고 있지만 어쩌면 나는 옳은 것을 찾지 않고있는 것일뿐입니다.Apache 2 하위 도메인?

내 도메인 이름의 제어판에 blog.domain.com을 추가하여 웹 서버의 IP 주소로 이동했습니다. 그러나 아파치의 설정 내에서 blog.domain.com을 특정 폴더로 보낼 수 있기를 바랍니다.

수정해야 할 파일과 추가해야 할 항목은 무엇입니까?

답변

4

당신은 NameVirtualHost을 찾고 있습니다. 나는 그것을 항상 사용한다 & 그것은 잘 작동한다!

사용중인 OS가 명확하지 않지만 일반적으로 원하는 포트에 대해 NameVirtualHost을 활성화해야합니다. 난 당신이 포트 80을 사용하는 가정, 그래서되도록 설정 아파치 설정 &이 라인을 찾을 수 :

NameVirtualHost *:80 

아파치 설정이 경우해야 포트 80에 목록으로 설정되어 있는지 확인합니다,하지만 추가 여기를 참조하십시오 :

Listen 80 

그런 다음 여기에 마법이 발생합니다. 다시 말하지만, 난 그냥 그렇게 서버 설정은 무엇으로 조정 기초를하고있는 중이 야 :

<VirtualHost *:80> 
    ServerName blog.domain.com 
    ServerAlias blog.domain.com 

    DocumentRoot /var/www/blog.domain.com 

</VirtualHost> 

키가 ServerNameVirtualHost에 와일드 카드입니다. 기본적으로 "Okay는 포트 80에서 NameVirtualHost을 사용하고 있습니다.이 구성은 서버 이름이 blog.domain.com이므로이 구성의 모든 옵션에주의를 기울이십시오. &은 blog.domain.com에만 적용하십시오. 그리고 DocumentRoot은 내가이 구성에서 나타내는 것이어야합니다. "

EDIT : 아래의 원래 포스터 코멘트를 기반으로 한 추가 조언을 추가하십시오.

먼저 어떤 식 으로든 /etc/apache2/sites-available/default을 편집하지 마십시오. 대신 새 하위 도메인 용으로 새 구성 파일을 만드십시오. 이렇게하면보다 쉽게 ​​관리 할 수 ​​있습니다.

sudo nano /etc/apache2/sites-available/blog.domain.com.conf 

그리고 새로운 blog.domain.com.conf 파일에 내가 위에있는 VirtualHost 물건을 추가 : 나는 당신이 sudo을 실행하고 내 예제 nano으로 편집해야 가정합니다. 물론 VirtualHost 지시어가 원하는 것과 일치하는지 확인하십시오. 내 것은 단지 벌거 벗은 예입니다. 그 일을 끝낼 경우

지금, 당신은과 같이 sites-enabledsites-available에서 심볼릭 링크를 만들어야합니다 :

sudo ln -s /etc/apache2/sites-available/blog.domain.com.conf /etc/apache2/sites-enabled/blog.domain.com.conf 

좋아, 모두 끝났다? Ubuntu 12와 비슷한 Apache2 설정 레이아웃을 가지고있는 것처럼 보입니다.나는에서 일한 04 서버, NameVirtualHost가 설정되어 있는지 확인하기 위해이 파일에 이동 :

NameVirtualHost *:80 
Listen 80 

이 좋아, 모든 설정 :

sudo nano /etc/apache2/ports.conf 

당신은 지금처럼 두 줄을 볼 수? 이제 아파치 &을 다시 시작해야합니다!

테스트하려는 경우이 줄이있는 하위 도메인의 문서 루트에 테스트 파일을 만듭니다. blog.domain.com

+0

정말 고마워요 제이크 : 모든 일 경우,이 디렉토리에 대한 설정이있는 호스트의 하위 도메인을 반향한다

<?php echo $_SERVER['SERVER_NAME']; ?> 

: 나는 당신이 PHP를 사용할 수있는 가정입니다! 올바른 파일에 있는지 확인하기 위해/etc/apache2/sites-available/default에 대해 이야기하고 있습니까? 또한 이미 섹션이 있으므로 해당 정보가 포함 된 추가 섹션을 추가해야합니까? – LewlSauce

+0

내 답변을 확장했습니다. 기본적으로,'default' 파일은 그대로 두어야합니다. 예제 파일입니다. 더 많은 가상 호스트를 추가하려면 각 가상 호스트에 대한 특정 지시어가있는 새 파일을 추가하는 것이 가장 좋습니다. 관리가 쉬워집니다. 내 말은, 당신은'default'로 모든 것을 덤프 할 수 있지만 잠시 후에는 많은 지시문을 가지고 혼란 스러울 수 있다는 것입니다. 항상 configs를 분리하는 것이 가장 좋습니다. – JakeGould

+0

고마워요. 한 가지 더 빠른 질문입니다. 내 도메인 이름 설정까지 추가/수정하려면 무엇이 필요합니까? 마찬가지로, 현재, 나는 단지 blog.domainname.com이 나의 VPS의 IP 주소로 갈 것이고, 아마 아파치의 설정이 나머지를 처리 ​​할 것이라고 생각했다. 이것에 대한 나의 인식은 잘못된 것보다 더 많은 가능성이 있습니다. – LewlSauce