2016-02-19 46 views
0

我的问题是我如何重定向ip的IP范围。 我有一个代码可以重定向到范围内的网址,但我需要做相反的 - 重定向ip超出范围。
东西相似:我如何redict ip哪些超出范围ip

$location = 'http://www.google.com/'; 

$range_low = ip2long("80.87.206.35"); 
$range_high = ip2long("80.87.206.38"); 

$ip = ip2long($_SERVER['REMOTE_ADDR']); 

if ($ip <= $range_low && $ip => $range_high) { 
header ('HTTP/1.1 301 Moved Permanently'); 
header ('Location: '.$location); 
} 

else { 

} 

回答

0

我找到了解决方案

$location = file_get_contents('http://www.google.com'); 
$location2 = file_get_contents('http://www.ya.ru'); 

$range_low = ip2long("128.140.172.0"); 
$range_high = ip2long("128.140.175.255"); 

$range_low2 = ip2long("94.100.184.0"); 
$range_high2 = ip2long("94.100.191.255"); 

$range_low3 = ip2long("94.100.176.0"); 
$range_high3 = ip2long("94.100.183.255"); 

$ip = ip2long($_SERVER['REMOTE_ADDR']); 


if (($ip < $range_low or $ip > $range_high)^($ip < $range_low2 or $ip > $range_high2)^($ip < $range_low3 or $ip > $range_high3)) { 
echo $location; // out of ip range 

} else { 
echo $location2; // in ip range