META刷新IP地址重定向每3个IP地址一次



尝试了几个论坛并在堆栈溢出上搜索至少80个问题后,我现在来stackoverflow寻求某种答案,因此请不要将其标记为垃圾邮件。

我希望每个IP地址仅一次激活一次Meta刷新重定向,这是三分之一的用户。

因此,每三个用户中的每1个用户都会使用元刷新重定向,但是这些IP地址再也不会重定向。

这种脚本是否可能?

您需要将其分解为任务,但这是可行的。一些警告的话: IP地址可以更改或共享(想想大学),但这对您的目标是不错的。

  1. 检查IP地址是否已重定向
  2. 使用随机检查确定是否是三分之一
  3. 如果是以某种方式记录它。此示例将其记录到文件。

我在这里留下了一些内容,这些内容对调试很有用:

// print_r($_SERVER);
$ineligibleIP=file_get_contents('reddit.txt');
//echo $ineligibleIP;
//echo $_SERVER['REMOTE_ADDR'];
if (strpos($ineligibleIP,$_SERVER['REMOTE_ADDR']) === false) {
    //echo 'Eligible';
    $test=rand(1,3);
    // echo $test;
    if($test==1) {
        $ineligibleIP.=$_SERVER['REMOTE_ADDR']."n";
        file_put_contents('reddit.txt', $ineligibleIP);
        header('Location: https://www.google.com');
    }
}
echo "Yay, not redirected.";

您可以使用诸如memcach的内容来跟踪每个第三次访问者。memcache ::增量

这将帮助您。您可以检查增量值%3 == 0。

用于跟踪谁已经重定向您有2个可能的解决方案:

1-在客户端上使用cookie。

2-使用MySQL表并将其放在那里的IP。

最新更新