Vd bạn sử dụng PHP
Thì dùng 1 array để lưu IP truy cập
$visited_ips = []; // phần này sẽ thay đổi sau
Dùng hàm này (copy từ google) để lấy ip
PHP:
// Function to get the client IP address
function get_client_ip() {
$ipaddress = '';
if (getenv('HTTP_CLIENT_IP'))
$ipaddress = getenv('HTTP_CLIENT_IP');
else if(getenv('HTTP_X_FORWARDED_FOR'))
$ipaddress = getenv('HTTP_X_FORWARDED_FOR');
else if(getenv('HTTP_X_FORWARDED'))
$ipaddress = getenv('HTTP_X_FORWARDED');
else if(getenv('HTTP_FORWARDED_FOR'))
$ipaddress = getenv('HTTP_FORWARDED_FOR');
else if(getenv('HTTP_FORWARDED'))
$ipaddress = getenv('HTTP_FORWARDED');
else if(getenv('REMOTE_ADDR'))
$ipaddress = getenv('REMOTE_ADDR');
else
$ipaddress = 'UNKNOWN';
return $ipaddress;
}
$ip = get_client_ip();
Check IP đó có trong list hay ko bằng
in_array($ip, $visited_ips)
. Nếu chưa thì:
- Lưu IP vào array trên
$visited_ips[] = $ip;
- Ghi vào file để lần sau lôi ra xài lại (request sau)
file_put_contents("ip.json",json_encode($visited_ips));
- Chuyển hướng đến web b
header("Location: http://web-b.com/");
Vì vậy cũng cần code lấy array đã save từ lần trc ra xài (đổi dòng ở trên, dòng
$visited_ips = [];
)
$visited_ips = json_decode(file_get_contents('ip.json'), true);
Code hoàn chỉnh
PHP:
<?php
$visited_ips = json_decode(file_get_contents('ip.json'), true);
function get_client_ip() {
$ipaddress = '';
if (getenv('HTTP_CLIENT_IP'))
$ipaddress = getenv('HTTP_CLIENT_IP');
else if(getenv('HTTP_X_FORWARDED_FOR'))
$ipaddress = getenv('HTTP_X_FORWARDED_FOR');
else if(getenv('HTTP_X_FORWARDED'))
$ipaddress = getenv('HTTP_X_FORWARDED');
else if(getenv('HTTP_FORWARDED_FOR'))
$ipaddress = getenv('HTTP_FORWARDED_FOR');
else if(getenv('HTTP_FORWARDED'))
$ipaddress = getenv('HTTP_FORWARDED');
else if(getenv('REMOTE_ADDR'))
$ipaddress = getenv('REMOTE_ADDR');
else
$ipaddress = 'UNKNOWN';
return $ipaddress;
}
$ip = get_client_ip();
if (!in_array($ip)) {
$visited_ips[] = $ip;
file_put_contents("ip.json",json_encode($visited_ips));
header("Location: http://web-b.com/");
} else {
echo "Ve di, m di 1 lan roi con di nua lam gi???";
}
Lưu ý: Code này chưa test đâu
có lỗi gì comment mình giúp cho (sơ sơ thui, mình gà mờ)