Настройка IPv6 на Apache2

В настоящее время у меня есть "ports.conf" со следующим содержимым:

NameVirtualHost *:80
Listen 80

<IfModule mod_ssl.c>
    Listen 443
    NameVirtualHost *:443
</IfModule>

<IfModule mod_gnutls.c>
    Listen 443
</IfModule>

Поэтому для добавления IPv6 я должен изменить его на:

NameVirtualHost 91.64.99.215:80
Listen 91.64.99.215:80

NameVirtualHost [2a01:4f8:140:54e4::3]:80
Listen [2a01:4f8:140:54e4::3]:80

<IfModule mod_ssl.c>
    Listen 443
    NameVirtualHost 91.64.99.215:443
    NameVirtualHost [2a01:4f8:140:54e4::3]:443
</IfModule>

<IfModule mod_gnutls.c>
    Listen 91.64.99.215:443
    Listen [2a01:4f8:140:54e4::3]:443
</IfModule>

Это правильно?

Я боюсь, что если я сделаю это, все Vhosts настроены как

<VirtualHost *:80>
     ServerName www.domain.tld
     ServerAlias domain.tld
     DocumentRoot /www/domain
</VirtualHost>

сойдет с ума Если это не так, делать

<VirtualHost *:80 [*]:80>
     ServerName www.domain.tld
     ServerAlias domain.tld
     DocumentRoot /www/domain
</VirtualHost>

также должен сделать домен доступным через IPv6?

Я немного запутался здесь и не могу многое сделать из существующих "примеров". Любая помощь будет оценена.

1 ответ

Решение

Вам просто нужно изменить свой Listen директивы к:

Listen [::]:80
Listen [::]:443

в то время как ваш

NameVirtualHost *:80
<VirtualHost *:80>

оставаться прежним.

Замечания: netstat -tln покажет Apache прослушивания только на tcp6 / :::80; это нормально (он также будет реагировать на IPv4, как и раньше)

Другие вопросы по тегам