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] ?>
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!