2010-02-13 35 views
6

.htaccess dosyasında php_flag ifadelerini koşullu olarak yürütmenin bir yolu var mı? İşte yapmaya çalışıyorum iki şey vardır:Koşullu php_flag ifadeleri .htaccess içinde

çevirin hata müşterinin IP adresi kullandığım IP adresini eşleşirse bildirme: IP adresi mayın eşleşirse

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

böylece Kodun açılmasını bekleyen sorunları açıklığa kavuşturabilirim.

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

Okuma için teşekkürler!

cevap

1

Kerry,

ben ilk denemede sorun normal ifadeniz "^192\.168\.0$" olmasıdır şüpheleniyoruz. Bu, herhangi bir olası Remote_Addr ile hiçbir zaman eşleşmeyecektir, çünkü IP adresine sadece 3 bölümünüz vardır, zorlanmış "^" ve "$" sonu.

Belki de "^192\.168\.0\." düzenli ifadesini kullanmayı mı düşünüyorsunuz?

Sonunda "$" özelliğini hariç tuttuğumdan, IP adresinin nasıl bittiği önemli değil. Ve ek bir "\." kaçan periyot ekledim, böylece eşleşen IP adreslerini gerçek bir "0" olması için zorlayacaksınız ve "012", "001" gibi bir şey değil (bu sıfır dolu değil) parçalar herhangi bir IP adresinde mevcut olmalıdır).