как ограничить страницу только указанным диапазоном ip в php - PullRequest
1 голос
/ 15 мая 2010

я ищу способ ограничить мою страницу администрирования только своим собственным диапазоном IP-адресов

concider мой диапазон ip составляет 215.67. .

поэтому в php я начну с этого:

$myip = "215.67.*.*";
$myip = explode(".", $my_ip);

$userip = getenv("REMOTE_ADDR") ; 
$userip = explode(".", $userip);

if ($myip[0] == $userip[0] AND $myip[1] == $userip[1]  ) {
    //Contunue admin
}

Есть ли лучший и более профессиональный способ сделать это?

1 Ответ

1 голос
/ 15 мая 2010
<?php
function in_ip_range($ip_one, $ip_two=false){
    if($ip_two===false){
        if($ip_one==$_SERVER['REMOTE_ADDR']){
            $ip=true;
        }else{
            $ip=false;
        }
    }else{
        if(ip2long($ip_one)<=ip2long($_SERVER['REMOTE_ADDR']) && ip2long($ip_two)>=ip2long($_SERVER['REMOTE_ADDR'])){
            $ip=true;
        }else{
            $ip=false;
        }
    }
    return $ip;
}
//usage
echo in_ip_range('192.168.0.0','192.168.1.254'); 
?>

Взято из http://www.php.net/manual/en/function.ip2long.php#81030

...