Php Joomla GEOIP Maxmind重定向循环
我正试图在joomla 2.5安装上实现Geoip服务 我想要的是网站重定向到法语 我已经在模板文件的头中包含了maxmindgeoip。但是重定向是在循环中执行的 这是我执行文件的方式:Php Joomla GEOIP Maxmind重定向循环,php,redirect,joomla2.5,geoip,Php,Redirect,Joomla2.5,Geoip,我正试图在joomla 2.5安装上实现Geoip服务 我想要的是网站重定向到法语 我已经在模板文件的头中包含了maxmindgeoip。但是重定向是在循环中执行的 这是我执行文件的方式: <?php include_once('templates/my_template/geoip/country-redirect.php'); ?> 我认为,因为脚本是从模板执行的,所以每次加载模板文件时它都会执行,因此在重定向时它将继续执行此脚本。尝试以下操作: $addr = $_SE
<?php include_once('templates/my_template/geoip/country-redirect.php'); ?>
我认为,因为脚本是从模板执行的,所以每次加载模板文件时它都会执行,因此在重定向时它将继续执行此脚本。尝试以下操作:
$addr = $_SERVER['SERVER_NAME'].dirname( $_SERVER['SCRIPT_NAME']);
$fr = (($addr == 'www.example.com/fr')||($addr == 'example.com/fr'));
if((!$fr)&&($country == 'FR')){ // if not at france and country is france
header('Location: http://www.example.com/fr');
exit(); // you exit here, so no else required
}
if(($fr)&&($country == 'US')){ // if at france and country is US
header('Location: http://example.com');
exit();
}
请注意,假设此脚本在www.example.com/和www.example.com/fr/目录下运行如果/fr或最有可能的我们(example.com)具有相同的脚本,请在重定向之前检查您的当前位置,否则您将永远重定向…您是否有此示例脚本?它将保持在循环中,argh。所以浏览器说它有很多连接。并且页面不会加载。脚本需要检查脚本是否已经执行。对不起,您至少可以回显地址吗?让我们检查一下。
$addr = $_SERVER['SERVER_NAME'].dirname( $_SERVER['SCRIPT_NAME']);
$fr = (($addr == 'www.example.com/fr')||($addr == 'example.com/fr'));
if((!$fr)&&($country == 'FR')){ // if not at france and country is france
header('Location: http://www.example.com/fr');
exit(); // you exit here, so no else required
}
if(($fr)&&($country == 'US')){ // if at france and country is US
header('Location: http://example.com');
exit();
}