저는 Linux와 Apache를 처음 사용합니다.
아파치를 사용하여 내 컴퓨터에서 호스팅되는 웹 사이트가 있습니다. 도메인이 www.myweb.com
. 이제 3 개의 하위 도메인을 a.myweb.com
만들고 b.myweb.com
.
내 첫 번째 질문은 가상 호스트를 사용하여이 작업을 수행 할 수 있다는 것입니다. 찾을 수있는 모든 가상 호스트 예제는 다른 도메인을 사용하므로 하위 도메인에도 적용되는지 확실하지 않습니다.
두 번째 질문은 가상 호스트가 하위 도메인에서 작동한다는 사실을 기반으로합니다. 내 httpd.conf
파일에서의 값 DocumentRoot
은 /srv/http
. 에서 /srv/http
3 개의 폴더 default
, a
및을 만들었습니다 b
. 그리고 여기 내 httpd-vhosts.conf
:
<VirtualHost myIP:80>
ServerAdmin [email protected]
DocumentRoot "/srv/http/default/public"
ServerName www.myweb.com
ServerAlias myweb.com
ErrorLog "/srv/http/default/logs/error.log"
CustomLog "/srv/http/default/logs/access.log" combined
<Directory />
Options FollowSymLinks Indexes
Require all granted
</Directory>
</VirtualHost>
<VirtualHost myIP:80>
ServerAdmin [email protected]
DocumentRoot "/srv/http/a/public"
ServerName a.myweb.com
ErrorLog "/srv/http/a/logs/error.log"
CustomLog "/srv/http/a/logs/access.log" combined
</VirtualHost>
<VirtualHost myIP:80>
ServerAdmin [email protected]
DocumentRoot "/srv/http/b/public"
ServerName b.myweb.com
ErrorLog "/srv/http/b/logs/error.log"
CustomLog "/srv/http/b/logs/access.log" combined
<Directory />
Options FollowSymLinks Indexes
Require all granted
</Directory>
</VirtualHost>
내가 입력 할 때 이제 문제는, www.myweb.com
, myweb.com
, a.myweb.com
또는 b.myweb.com
브라우저에서, 나는 항상로 이동하고있어 DocumentRoot
인 /srv/http
. 그래서 내가 잘못했거나 하위 도메인이 이런 식으로 작동하지 않습니까? 감사합니다.
<VirtualHost myIP:80>
가상 호스트 섹션의 시작 부분에서 사용 하는 것으로 나타났습니다 . 내가 사용하는 <VirtualHost *:80>
내 이름 기반 가상 호스트의 모든 - 참조 하는 방법 (예제)으로 설정 아파치 가상 호스트 설정 IP 기반 가상 호스트 대 이름 기반 virutal 호스트 서버를 구성 사이의 차이. 서버에 여러 개의 IP 주소가 있고 사이트가 다른 IP 주소에 응답하도록하려면 IP 주소를 입력해야한다고 생각하지만 서버가 수신하는 IP 주소를 사용하여 모든 사이트에 액세스 할 수 있어야하는 경우 가상 호스트 섹션의 IP 주소 대신 "*"를 사용하여 차이가 있는지 확인합니다. 그렇지 않으면 구성이 내 구성과 비슷해 보입니다. 당신은 또한 시도 할 수 있습니다httpd -S
해당 기사에서 제안한대로 VirtualHost 구성 synatax를 확인하여 해당 검사에서보고하는 Apache가 잘못된 것으로 보이는지 확인합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다