Necesito crear un archivo .htaccess temporal en mi servidor de prueba para que solo mi ip dhcp pública pueda acceder a mis sitios de prueba.
Tengo tres líneas en mi .htaccess.
RewriteEngine On RewriteCond expr "file('%{DOCUMENT_ROOT}/myip') != %{REMOTE_ADDR}" RewriteRule ^(.*)$ /blackhole2.html [R,L]
La primera línea lee la salida de mi archivo de script php escrito en el archivo /myip. Si la dirección no coincide con 'remote_addr', reenvíe a una página web adecuada. es decir: blackhole2.html
Parece que si las direcciones IP coinciden, puedo acceder a mi sitio de prueba. Sin embargo, si la dirección IP no coincide, la regla de reescritura falla con errores de bucle 302.
He probado varios delimitadores de banderas, etc., pero ahora he tirado mis juguetes de mi cajón de TI.
Qué he pasado por alto, o no he entendido qué más se requiere. Gracias.
Esto activa un bucle de redirección cuando la dirección IP no coincide porque la respuesta redirigida a /blackhole2.html
es capturada por la misma regla y redirigida a /blackhole2.html
una y otra vez....
Debe incluir una excepción para cuando se solicite /blackhole2.html
.
Por ejemplo:
: RewriteRule !^blackhole2\.html$ /blackhole2.html [R,L]
O simplemente bloquee la solicitud (403 Prohibido) y no redirija:
: RewriteRule ^ - [F]
Aunque deberá crear una excepción si tiene un 403 ErrorDocument
personalizado.