2010-02-13 11 views
6

¿Hay alguna manera de ejecutar condicionalmente las sentencias php_flag en .htaccess? Aquí hay dos cosas que estoy tratando de hacer:Sentencias php_flag condicional en .htaccess

error

Encienda informar sobre si la dirección IP del cliente coincide con la dirección IP que utilizo:

if %{REMOTE_ADDR} == '12.34.56.78' then 
    php_flag error_reporting 1 
else 
    php_flag error_reporting 0 

Desactivar register_globals si la dirección IP coincide con la mía, así que Puedo depurar cualquier problema causado por el código esperando que esto se active.

if %{REMOTE_ADDR} == '12.34.56.78' then 
    php_flag register_globals on 
else 
    php_flag register_globals on 

¡Gracias por leer!

Respuesta

1

Kerry,

sospecho que el problema con su primer intento es que su expresión regular es "^192\.168\.0$". Esto nunca coincidirá con ningún Remote_Addr posible ya que solo tiene 3 partes para la dirección IP, con un inicio forzado de "^" y un final de "$".

Quizás intentó utilizar la expresión regular "^192\.168\.0\."?

Tenga en cuenta que he excluido el "$" al final, por lo que no importa cómo finaliza la dirección IP. Y que he incluido un período de escape extra "\." para que fuerce a las direcciones IP coincidentes a tener un "0" real y no algo así como "", "001", etc. (no es que estos llenos a cero) las partes deben estar presentes en cualquier dirección IP).