如果没有引用并重定向流量类型,则重定向

时间:2014-05-24 07:46:04

标签: php redirect

如果用户来到没有推荐人的页面,或者用户直接键入我的页面,我试图从其他页面加载内容。

这是我想要改变的代码,以便能够实现这一目标。

以下代码根据用户是否拥有下面列出的1个IP重定向,它将加载fakepage.php。我想改变这个脚本,以便它可以在没有引用者的情况下工作,或者如果用户直接输入我的网址。

<?php
$banned = array('56.150.186.229','89.103.221.49');
$userIP = $_SERVER['SERVER_ADDR'];
if(in_array($userIP,$banned)) {
include_once('fakepage.php');
} else {
include_once('realpage.php');
}
?>

我试图让这个外观尽可能无缝,因此用户不会知道它们被重定向

1 个答案:

答案 0 :(得分:0)

使用$_SERVER['REMOTE_ADDR']获取用户ip(如果您在代理或类似设备后面运行,则可能需要另一个标头。然后检查$_SERVER['HTTP_REFERER']是否为第二个条件为空。

 $banned = array('56.150.186.229','89.103.221.49');
 $userIP = $_SERVER['REMOTE_ADDR']; // likely users ip
 $noReferer = empty($_SERVER['HTTP_REFERER']);
 if(in_array($userIP,$banned) or $noReferer) {
   include_once('fakepage.php');
 } else {
   include_once('realpage.php');
 }