如何创建重定向页面到新页面

时间:2014-03-30 19:35:47

标签: php redirect geoip

我不是专家,但我正在尝试监控我的流量,我试图创建包含检测用户Geo并将其重定向到新页面的代码的页面

但它看起来像是缺少什么,我不知道是什么

我尝试使用此Geo redirect user just once using php

但我无法找到我的GeoIP.php

有人可以给我提示我需要什么才能让它发挥作用

由于 波阿斯

1 个答案:

答案 0 :(得分:0)

你应该看一下:http://www.php.net/manual/en/function.geoip-continent-code-by-name.php

只需使用

$country = geoip_continent_code_by_name ( $_SERVER['REMOTE_ADDR'] );

$ country将返回2个字母的国家/地区代码。以下是您应该可以使用的内容:

<?php

   //Get the country code of the user, using REMOTE_ADDR is the most reliable way to do this
   $country = geoip_continent_code_by_name ( $_SERVER['REMOTE_ADDR'] );

  //Create a switch case to deal with the country codes
  switch((string)$country) {
    case 'AU':
      $url = "http://www.site.au";
      break;
    case 'CA':
      $url = "http://www.site.ca";
      break;

    //default case means, if you didn't provide a case (country code in your example), do this (otherwise known as a "catch all")
    default:
      $url = "http://defaultsite.com";

      } //End switchcase

  //This if statement says as long as $url is not empty (! means not), update header location (this is the php way of forwarding)
  if ( !empty($url) ){
      header('Location: '.$url);
  } //End if statement

?>

你会注意到我删除了try,catch块。这是用户偏好,但大多数人不喜欢它(使用开关盒就是你提供默认情况的原因)。

这应该100%为你工作。