2009-07-02 23 views
12

Me gustaría implementar mod_rewrite para poner mi sitio en mantenimiento. Básicamente, todas las direcciones IP, excepto algunas que especifiquemos, se reenviarán a una página html estática.mod_rewrite basado en ip

Por favor, alguien puede ayudar con esta regla. ¿También hay una forma de activar y desactivar esto fácilmente sin editar el archivo htaccess?

Respuesta

15

Usted puede utilizar la variable REMOTE_ADDR en un RewriteCond

RewriteCond %{REMOTE_ADDR} !^10\.0\.1\.1$ 
RewriteRule^/maintenance.html 

Sólo cambia la condición para que coincida con la IP que desee, por más de una puede utilizar^(IP1 | IP2 | ... | IPN) ps

Acerca de cómo deshabilitar el modo de mantenimiento sin cambiar el archivo .htaccess Creo que no es posible grabar un programa que lo elimine o modifique de otra manera, una cosa fácil sería cambiarle el nombre.

+0

No te olvides de marcar el inicio y el final en tu historial expresión. – Gumbo

0

puede habilitar este estado y deshabilitarlo a través de alguna interfaz de administrador que pueda escribir en .htaccess (por ejemplo, permisos establecidos en 755 o 777). siempre encontraría el .htaccess, inserta esas dos líneas al principio y al deshabilitar el mantenimiento eliminaría esas dos líneas, dejando intacto el resto del archivo

Cuestiones relacionadas