元刷新 IP 地址每 3 个 IP 地址重定向一次
Meta Refresh IP Address Redirect Once Every 3 IP Addresses
在尝试了几个论坛并在 Stack Overflow 上搜索了至少 80 个问题以获得某种答案后,我现在来到 Whosebug,所以请不要将其标记为垃圾邮件。
我希望每个 IP 地址只激活一次 META REFRESH 重定向,并且是三分之一的用户。
因此,每 3 个用户中就有 1 个使用 META REFRESH 进行重定向,但这些 IP 地址永远不会再被重定向。
这种脚本可行吗?
您可以使用 memcached 之类的工具来跟踪每三个访问者。
Memcache::increment
这会帮助你。您可以检查增量值 % 3 == 0.
要跟踪已重定向的用户,您有 2 种可能的解决方案:
1 - 在客户端使用 cookie。
2 - 使用 mysql table 并将重定向的 ip 放在那里。
你会想把它分解成任务,但这是可行的。 一些警告: IP 地址可以更改或共享(想想大学),但这可能适合您的目标。
- 检查IP地址之前是否被重定向
- 使用随机检查来确定它是否是三分之一
- 如果它以某种方式记录下来。此示例将其记录到文件中。
我在这里注释掉了一些对调试有用的东西:
// 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.";
在尝试了几个论坛并在 Stack Overflow 上搜索了至少 80 个问题以获得某种答案后,我现在来到 Whosebug,所以请不要将其标记为垃圾邮件。
我希望每个 IP 地址只激活一次 META REFRESH 重定向,并且是三分之一的用户。
因此,每 3 个用户中就有 1 个使用 META REFRESH 进行重定向,但这些 IP 地址永远不会再被重定向。
这种脚本可行吗?
您可以使用 memcached 之类的工具来跟踪每三个访问者。 Memcache::increment
这会帮助你。您可以检查增量值 % 3 == 0.
要跟踪已重定向的用户,您有 2 种可能的解决方案:
1 - 在客户端使用 cookie。
2 - 使用 mysql table 并将重定向的 ip 放在那里。
你会想把它分解成任务,但这是可行的。 一些警告: IP 地址可以更改或共享(想想大学),但这可能适合您的目标。
- 检查IP地址之前是否被重定向
- 使用随机检查来确定它是否是三分之一
- 如果它以某种方式记录下来。此示例将其记录到文件中。
我在这里注释掉了一些对调试有用的东西:
// 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.";