ipv6과 작동하도록 Apache 가상 호스트를 설정하는 방법은 무엇입니까?

ipv6과 작동하도록 Apache 가상 호스트를 설정하는 방법은 무엇입니까?

1개의 ipv4 주소와 몇 개의 ipv6 주소를 가진 서버가 있습니다. 하나의 도메인이 ipv4 A 레코드로 리디렉션됩니다. 다음과 같이 apache ports.conf를 설정했습니다.

Listen ip.v4.address:80
NameVirtualHost ip.v4.address:80

및 가상호스트 파일:

<VirtualHost ip.v4.address:80>
DocumentRoot /var/www/first/
ServerName first.domain
ServerAlias www.first.domain
ErrorLog ...
CustomLog ...
</VirtualHost>

그리고 모든 것이 잘 작동합니다.

이제 두 번째 IP를 사용하여 두 번째 도메인에 대한 새 가상 호스트를 만들고 싶습니다. 두 번째 도메인을 ipv6 AAAA 레코드로 리디렉션하고 ports.conf에 추가합니다.

Listen [ip.v6.address]:80
NameVirtualHost [ip.v6.address]:80

새 가상 호스트 파일을 만듭니다.

<VirtualHost [ip.v6.address]:80>
DocumentRoot /var/www/second/
ServerName second.domain
ServerAlias www.second.domain
ErrorLog ...
CustomLog ...
</VirtualHost>

그리고 아파치를 다시 시작하세요. 서버 시작시 오류는 없었지만 작동하지 않습니다. 브라우저에 두 번째 도메인을 입력하면 서버를 찾을 수 없습니다. 들어가니 [ip.v6.address]사이트가 뜹니다.

도움이 필요하세요?

답변1

Apache 구성은 정확해 보이지만 IPv4와 IPv6(이중 스택)을 통해 하나의 사이트에 접근할 수 있도록 하려면 필요한 것보다 조금 더 복잡합니다.

대신에

<VirtualHost ip.v4.address:80>
...
</VirtualHost>

<VirtualHost [ip.v6.address]:80>
...
</VirtualHost>

넌 할 수있어

<VirtualHost ip.v4.address:80 [ip.v6.address]:80>
...
</VirtualHost>

이렇게 하면 단일 가상 호스트가 두 IP 주소를 모두 수신합니다. 유지 관리가 훨씬 쉽습니다!

IPv6에서 정말로 다른 사이트를 원한다면 물론 구성이 올바른 것입니다.

답변2

이는 Apache 오류가 아닌 IPv6 이름 확인 오류처럼 들립니다. 이름이 주소로 올바르게 확인되는지 확인하세요.

답변3

이름이 올바른 IPv6 주소로 확인됩니까? 도메인 확인에 문제가 있는 것 같습니다.

관련 정보