Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana Mendapatkan Alamat IP Pelawat Sebenar Apabila Menggunakan Proksi?

Bagaimana Mendapatkan Alamat IP Pelawat Sebenar Apabila Menggunakan Proksi?

Barbara Streisand
Lepaskan: 2024-11-12 02:56:01
asal
863 orang telah melayarinya

How to Get the Real Visitor IP Address When Using Proxies?

Cara Mendapatkan Kembali Alamat IP Pelawat Sahih

Apabila cuba mendapatkan alamat IP pelawat menggunakan kod PHP lalai , ia mungkin tidak mendapatkan semula alamat IP sebenar apabila proksi digunakan. Artikel ini bertujuan untuk menangani isu ini dengan menyediakan penyelesaian yang mantap.

Kod PHP yang disediakan menangani cabaran ini dengan berkesan:

<?PHP

function getUserIP()
{
    // Handle CloudFlare network's IP masking
    if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
              $_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
              $_SERVER['HTTP_CLIENT_IP'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
    }
    $client  = @$_SERVER['HTTP_CLIENT_IP'];
    $forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
    $remote  = $_SERVER['REMOTE_ADDR'];

    if(filter_var($client, FILTER_VALIDATE_IP))
    {
        $ip = $client;
    }
    elseif(filter_var($forward, FILTER_VALIDATE_IP))
    {
        $ip = $forward;
    }
    else
    {
        $ip = $remote;
    }

    return $ip;
}


$user_ip = getUserIP();

echo $user_ip; // Output IP address [Ex: 177.87.193.134]


?>
Salin selepas log masuk

Kod ini secara berkaedah menyemak alamat IP pelawat menggunakan pelbagai pengepala, mengambil kira penggunaan proksi yang berpotensi, termasuk yang digunakan oleh CloudFlare. Ia menapis dengan teliti alamat IP yang diambil untuk memberikan gambaran paling tepat bagi alamat IP sebenar pelawat.

Dengan melaksanakan kod ini, anda boleh memastikan bahawa anda secara konsisten memperoleh alamat IP sahih pelawat anda, tidak kira sama ada mereka sedang menggunakan proksi atau tidak.

Atas ialah kandungan terperinci Bagaimana Mendapatkan Alamat IP Pelawat Sebenar Apabila Menggunakan Proksi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan