Help Các bác biết về làm web vào giúp em với ạ!!!

notspampls

Senior
Joined
Apr 24, 2010
Messages
574
Reactions
186
MR
0.484
Tình hình là thế này, mình muốn truy cập vào 1 site bằng nhiều ssh và VPN, thế nhưng lại ko muốn bị trùng lượt IP đã vào. Kiểu như là: tạo trang A tự động chuyển qua trang B, nhưng nếu IP đó đã vào B rồi thì A sẽ chặn lại báo ko cho vào! Làm thế để Ip đã vào sẽ ko vào đc site B nữa á! Có bác nào biết làm không thông não em cách làm với ạ :)
 

chirito

Junior
Joined
Nov 27, 2019
Messages
31
Reactions
9
MR
0.101
Tình hình là thế này, mình muốn truy cập vào 1 site bằng nhiều ssh và VPN, thế nhưng lại ko muốn bị trùng lượt IP đã vào. Kiểu như là: tạo trang A tự động chuyển qua trang B, nhưng nếu IP đó đã vào B rồi thì A sẽ chặn lại báo ko cho vào! Làm thế để Ip đã vào sẽ ko vào đc site B nữa á! Có bác nào biết làm không thông não em cách làm với ạ :)
Đơn giản mà bác có thể lưu IP truy cập của trang A vào database hoặc file text sau đó qua trang B đọc dữ liệu IP đó nếu IP truy cập hiện tại nằm trong tệp dữ liệu thì không cho truy cập
 
Đơn giản mà bác có thể lưu IP truy cập của trang A vào database hoặc file text sau đó qua trang B đọc dữ liệu IP đó nếu IP truy cập hiện tại nằm trong tệp dữ liệu thì không cho truy cập
Kiểu vậy đó ạ! Bác có thể hướng dẫn em làm đc ko với ạ
 

khanhne

Senior
Joined
Nov 18, 2019
Messages
494
Reactions
435
MR
36.846
Call me! Call me! Chat with me via Yahoo Messenger Follow me on Facebook
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ì:
  1. Lưu IP vào array trên
    $visited_ips[] = $ip;
  2. 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));
  3. 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 :D có lỗi gì comment mình giúp cho (sơ sơ thui, mình gà mờ)
 
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ì:
  1. Lưu IP vào array trên
    $visited_ips[] = $ip;
  2. 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));
  3. 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 :D có lỗi gì comment mình giúp cho (sơ sơ thui, mình gà mờ)
Vâng cám ơn bác! Để e ngâm cứu
 

Announcements

Forum statistics

Threads
426,776
Messages
7,185,553
Members
179,130
Latest member
hen88info

Most viewed of week

Most discussed of week

Most viewed of week

Most discussed of week

Back
Top Bottom