Estoy tratando de permitir solo el host local en una carpeta determinada, funciona perfecto con ipv4 ( Allow from 127.0.0.1
) pero tan pronto como agrego ipv6 ( Allow from [::1]
), mi Apache ya no se inicia.
Revisé error.log
y dice:
La dirección IP especificada no es válida.
Ya escribí la dirección ipv6 sin el formato comprimido, tampoco funcionó.
Estoy usando Apache 2.2.25, Windows 8.1. IPv6 está habilitado en mi computadora.
Respuesta1
La notación en la que se rodea la dirección IPv6 entre corchetes solo se utiliza en los casos en los que puede haber confusión entre la dirección y un número de puerto opcional.
Un ejemplo está en elListen
directiva. Debido a que puede especificar tanto una dirección como un puerto, se deben agregar corchetes para evitar confusión: Listen 2001:db8::1:8080
no es válido porque podría significar tanto como Listen [2001:db8::1]:8080
como Listen [2001:db8::1:8080]
. Los corchetes lo hacen explícito.
Para elAllow from
directiva este no es el caso. Al especificar una dirección, siempre es una dirección sin número de puerto. Por tanto, Allow from 2001:db8::1:8080
nunca es ambiguo. Siempre es la dirección IPv6 2001:db8::1:8080
.
Si omite los corchetes ( Allow from ::1
), debería funcionar.
Respuesta2
Su virtualhost debe definirse de esta manera, <VirtualHost *:80>
lo que permite el acceso tanto para ipv4 como para ipv6.
Además, la documentación de Apache utiliza este formato para la restricción de ipv6:
Allow from 2001:db8::a00:20ff:fea7:ccea
documento apache