[英]MaxMind GeoIP redirects everything?
我想将用户从特定国家/地区重定向到另一种语言。 因此,我已将MaxMind的GeoIPv6.dat和geoip.inc上传到我的网页文件夹中。
我在index.php的标题中使用以下脚本:
<?php
require_once('geoip.inc');
$gi = geoip_open('GeoIPv6.dat', GEOIP_MEMORY_CACHE);
$country = geoip_country_code_by_addr($gi, $_SERVER['REMOTE_ADDR']);
geoip_close($gi);
$my_countries = array('AT', 'DE');
if (!in_array(strtolower($country), $my_countries))
{
header('Location: http://www.de.mywebsite.com');
}
else
{
header('Location: http://www.mywebsite.com');
}
?>
奇怪的是,该脚本将所有人转发到de.mywebsite.com? 这是为什么? 我该如何解决这个问题?
谢谢你的帮助!!!
除了来自德国和奥地利的访客外,您将所有人重定向到德国站点。
你可能想要
if (in_array(strtolower($country), $my_countries))
没有反转条件的感叹号。
哦,还有@Alex在他的回答中说的话。
您将国家/地区代码转换为小写,但使用大写为您的数组播种:
$my_countries = array('AT', 'DE');
if (!in_array(strtolower($country), $my_countries))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.