Apache2 및 도메인 제어

Apache2 및 도메인 제어

질문이 있습니다.

Apache2 서버를 가리키는 A 레코드를 생성하고 하위 도메인이 있는 가상 호스트를 생성하는 경우. 그러면 추가 기록을 만들지 않고도 하위 도메인에 액세스할 수 있나요?

답변1

DNS A 레코드와 Apache VirtualHosts를 혼동하는 것 같습니다. 그들은 완전히 다른 수준에서 작동하며 실제로 상호 교환이 불가능합니다.

Apache의 경우 섹션을 지정하면 <VirtualHost>해당 섹션의 모든 s에 대한 요청을 수신할 때 수행할 작업을 Apache에 지시합니다. ServerName그러나 외부 세계는 DNS에서 서버를 가리키지 않는 한 서버에 이러한 이름을 묻지 않으므로 두 가지가 모두 필요합니다.

(예, 여기서는 와일드카드를 건너뛰고 있다는 것을 알고 있습니다. DNS와 웹 호스팅을 처음 접하는 사람들을 위해 간단하고 명확하게 유지하려고 노력하고 있습니다.)

www.foo.com예를 들어보겠습니다. address 에 있는 서버를 가리키는 A 레코드가 있다고 가정해 보겠습니다 1.2.3.4. 다음 VirtualHost섹션이 있습니다.

<VirtualHost *:80>
    ServerName www.foo.com
    DocumentRoot /var/www/html
    -- etcetera ---
</VirtualHost>

이는 포트 80의 www.foo.com에 대한 모든 연락처 요청이 이 섹션의 지침에 따라 처리되어야 함을 Apache 서버에 알려줍니다.

이제 하위 도메인을 추가한다고 가정해 보겠습니다.

<VirtualHost *:80>
    ServerName sub.foo.com
    ServerAlias sub2.foo.com

    DocumentRoot /var/www/subdomain/html
    --- etc ---
</VirtualHost>

이제 Apache 서버에 방법을 알려주었습니다.대답하다요청 sub.foo.com하고 sub2.foo.com. 그러나 A 레코드에 포인터를 추가하지 않으면 아무도 이에 대해 알 수 없습니다 sub.foo.com.1.2.3.4도착하다서버에 도메인을 요청하세요.

답변2

캔트. 동일한(또는 다른) IP 주소를 가리키는 또 다른 A 레코드 또는 기존 도메인을 가리키는 CNAME 레코드가 필요합니다.

관련 정보