Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mendapatkan Alamat IP Pelawat Sebenar Apabila Menggunakan CloudFlare dalam PHP?

Bagaimana untuk Mendapatkan Alamat IP Pelawat Sebenar Apabila Menggunakan CloudFlare dalam PHP?

Patricia Arquette
Patricia Arquetteasal
2024-10-25 04:37:30336semak imbas

How to Retrieve Real Visitor IP Addresses When Using CloudFlare in PHP?

Mengambil semula Alamat IP Pelawat dengan CloudFlare dalam PHP

Apabila menjejaki pelawat tapak web dengan PHP, menggunakan $_SERVER['REMOTE_ADDR'] biasanya mendapatkan semula CloudFlare alamat IP. Untuk mendapatkan alamat IP pelawat sebenar semasa menggunakan CloudFlare, pertimbangkan pendekatan berikut:

CloudFlare menyediakan pembolehubah pelayan tambahan, termasuk:

  • $_SERVER["HTTP_CF_CONNECTING_IP"]: Pelawat sebenar Alamat IP
  • $_SERVER["HTTP_CF_IPCOUNTRY"]: Kod negara pelawat
  • $_SERVER["HTTP_CF_RAY"]: Pengecam unik untuk permintaan
  • $_SERVER["HTTP_CF_VISITOR" ]: Menunjukkan jika permintaan adalah melalui HTTP atau HTTPS

Untuk menggunakan pembolehubah ini, ubah suai kod anda seperti berikut:

<code class="php">if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
  $_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
}</code>

Dengan memberikan alamat IP pelawat yang tulen kepada $_SERVER ['REMOTE_ADDR'], anda boleh log dan menjejaki pelawat tapak web dengan tepat walaupun CloudFlare didayakan.

Nota: Untuk memastikan kesahihan alamat IP, sahkan bahawa $_SERVER['REMOTE_ADDR'] mengandungi alamat IP CloudFlare yang sah, kerana sesiapa sahaja berpotensi untuk menipu pengepala dan menyambung terus ke IP pelayan anda.

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

Kenyataan:
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