Назад | Перейти на главную страницу

Apache 2.2 не запускается с адресом ipv6

Я пытаюсь разрешить локальный хост только в определенной папке, он отлично работает с ipv4 (Allow from 127.0.0.1) но как только добавлю ipv6 (Allow from [::1]) мой Apache больше не запускается.

Я проверил error.log и он говорит:

Указанный IP-адрес недействителен.

Я уже набрал адрес ipv6 без сжатого формата, тоже не сработало.

Я использую Apache 2.2.25, Windows 8.1. На моем компьютере включен IPv6.

Обозначение, в котором вы заключаете IPv6-адрес в квадратные скобки, используется только в тех случаях, когда может возникнуть путаница между адресом и необязательным номером порта.

Один пример находится в Listen директива. Поскольку он может указывать и адрес, и порт, необходимо добавить скобки, чтобы избежать путаницы: Listen 2001:db8::1:8080 недействителен, потому что это может означать Listen [2001:db8::1]:8080 и Listen [2001:db8::1:8080]. Скобки делают это явным.

Для Allow from директива это не так. При указании адреса это всегда адрес без номера порта. Следовательно Allow from 2001:db8::1:8080 никогда не бывает двусмысленным. Это всегда IPv6-адрес 2001:db8::1:8080.

Если опустить скобки (Allow from ::1) он должен работать.

Ваш виртуальный хост должен быть определен так <VirtualHost *:80>который разрешает доступ как для ipv4, так и для ipv6.

Также в документации Apache используется этот формат для ограничения ipv6: Allow from 2001:db8::a00:20ff:fea7:ccea Документ Apache