使用ip将用户重定向到其他网站

时间:2018-07-07 11:19:04

标签: php ip url-redirection

我正在使用ip进行重定向。 以前它可以工作,但现在不起作用。 我尝试了堆栈溢出解决方案,但后来也无法正常工作。 如果用户来自印度,则重定向到另一个网站,如果来自其他人,则也重定向到另一个网站。 帮我摆脱这个。 这是我的代码。

<?php

function getRealIpAddr()
{
    if (!empty($_SERVER['HTTP_CLIENT_IP']))   //check ip from share internet
    {
      $ip=$_SERVER['HTTP_CLIENT_IP'];
    }
    elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))   //to check ip is pass from proxy
    {
      $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
    }
    else
    {
      $ip=$_SERVER['REMOTE_ADDR'];
    }
    return $ip;
}

$xml = simplexml_load_file("http://www.geoplugin.net/xml.gp?ip=".getRealIpAddr());
echo $xml->geoplugin_countryName ;



?>
<?php 

$country = $xml->geoplugin_countryName ;


echo  $country;

if($country == "India")
{

header("Location: http://akreations.in/");


}
else
{
header("Location: https://www.anjkreations.com/");
}
?>

1 个答案:

答案 0 :(得分:0)

您可以使用第三方服务并执行远程查找。这是更简单的选项,因为它不需要设置。

<?php
function getIP(){
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
    } 
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    } 
else {
$ip = $_SERVER['REMOTE_ADDR'];
    }
return $ip;
}

$ipaddress = getIP();

 function ip_details($ip) {
$json = file_get_contents("http://ipinfo.io/{$ip}/geo");
$details = json_decode($json, true);
return $details;
 }

$details = ip_details($ipaddress);
$country= $details['country'];
if($country == "IN")
 {

 header("Location: http://akreations.in/");


}
else
{
header("Location: https://www.anjkreations.com/");
}
?>