가상호스트 & 서브도메인 질문입니다.

이진환의 이미지


안녕하세요?

우선 저는 Apache2를 사용하고 있습니다.
먼저 제가 의도한 것을 설명하겠습니다.

apache에서는 사용자를 만들면 http://example.com/~user/ 이렇게 주소가 연결되는 걸로 알고 있습니다.
하지만 저는 따로 유저에게 http://user.exampler.com/ 이라는 주소를 주고싶습니다.
1. 보통 저런걸 서브 도메인이라 하는지 맞는지 궁금합니다.

그리고 저는 서브도메인이라 생각하고서 검색해보니 네임서버 설정해 줘야한다 해서
example.com의 zone파일에 "user IN A 123.234.345.456" 라고 추가해주고 시리얼을 바꿔줬습니다.
그리고 리버스 파일에다가 "456 IN PTR user.example.com." 을 추가해주고 시리얼을 바꿔줬습니다.
그리고 named을 다시시작시켜 주었습니다.
2. 위와 같이 설정하는 것이 올바른가요? 아니면 설정이 틀렸나요, 아님 설정하지 않아도 되나요?

그리고 httpd.conf의
#Include conf/extra/httpd-vhosts.conf 의 주석을 풀어주고서

httpd-vhosts.conf 파일내용을 다음과 같이 했습니다.
=============================================

NameVirtualHost 123.234.345.456

ServerAdmin root@example.com
DocumentRoot /home/user/www
ServerName user.example.com

=============================================

이렇게 내용을 해줬습니다. 다른 내용은 모두 주석처리 입니다. 그리고 restart를 해줬습니다.
3. 위와같이 설정하고서 user.example.com을 들어가니 exampler.com 을 들어간 것과 똑같이 뜹니다. 이런 경우 어떻게 해결해야 합니까?

꼭좀 도와주셨으면 합니다.

익명사용자의 이미지

가상호스트를 추가하실때 제일먼저 기존에 사용하던 주호스트에대한 설정을 먼저 하시고
그다음 추가할 가상호스트를 설정하셔야 합니다

http://httpd.apache.org/docs/2.0/vhosts/name-based.html

주 호스트가 없어진다
기존에 사용하던 웹서버에 가상호스트를 추가한다면 기존에 사용하던 호스트에 대한 <VirtualHost> 블록도 추가해야 한다. 이 블록에 포함하는 ServerName과 DocumentRoot는 전체 ServerName과 DocumentRoot와 같아야 한다. 설정파일에서 이 가상호스트를 가장 먼저 적으면 기본 호스트가 된다.

이진환의 이미지



DocumentRoot /usr/local/apache2/htdocs
ServerName example.com

NameVirtualHost 123.234.345.456

ServerName user.example.com DocumentRoot /home/user/www

이렇게 바꿔줘도 역시나 안됩니다 ㅜㅜ