Rumah > pembangunan bahagian belakang > tutorial php > Mengapa Pembolehubah $_SERVER[\'HTTP_REFERER\'] Saya Hilang atau Tidak Boleh Dipercayai?

Mengapa Pembolehubah $_SERVER[\'HTTP_REFERER\'] Saya Hilang atau Tidak Boleh Dipercayai?

Mary-Kate Olsen
Lepaskan: 2024-12-29 20:58:14
asal
958 orang telah melayarinya

Why is My $_SERVER['HTTP_REFERER'] Variable Missing or Untrustworthy?

Mengapakah $_SERVER['HTTP_REFERER'] Hilang?

Apabila cuba menggunakan $_SERVER['HTTP_REFERER'] dalam skrip PHP anda , anda menghadapi ralat: Notis: Indeks tidak ditentukan: HTTP_REFERER. Ketiadaan ini berpunca daripada ciri yang wujud bagi pembolehubah.

Memahami $_SERVER['HTTP_REFERER']

Pembolehubah HTTP_REFERER mengandungi URL halaman yang mengarahkan pengguna untuk halaman semasa anda. Walau bagaimanapun, mengikut dokumentasi PHP:

"Alamat halaman (jika ada) yang merujuk ejen pengguna ke halaman semasa. Ini ditetapkan oleh ejen pengguna. Tidak semua ejen pengguna akan menetapkan ini, dan sesetengahnya menyediakan keupayaan untuk mengubah suai HTTP_REFERER sebagai ciri Ringkasnya, ia tidak benar-benar boleh dipercayai."

Dengan kata lain, tidak semua ejen pengguna menghantar pembolehubah ini, dan mereka yang melakukannya mungkin membenarkan pengguna untuk. memanipulasi nilainya. Oleh itu, bergantung pada HTTP_REFERER untuk maklumat perujuk yang tepat adalah tidak boleh dipercayai.

Alternatif kepada $_SERVER['HTTP_REFERER']

Memandangkan pengehadan HTTP_REFERER, pertimbangkan kaedah alternatif untuk penjejakan pengguna rujukan:

  • Pengepala Perujuk Tersuai: Buat pengepala HTTP tersuai untuk menghantar URL perujuk secara eksplisit.
  • Ubah hala dengan Rentetan Pertanyaan: Ubah hala pengguna ke halaman anda dengan rentetan pertanyaan yang mengandungi perujuk URL.
  • Pembolehubah Sesi: Simpan URL perujuk dalam pembolehubah sesi semasa lawatan awal dan aksesnya kemudian.
  • Alat Analitis Pihak Ketiga: Gunakan alatan analitis seperti Analitis Google untuk mengumpul data perujuk.

Atas ialah kandungan terperinci Mengapa Pembolehubah $_SERVER[\'HTTP_REFERER\'] Saya Hilang atau Tidak Boleh Dipercayai?. 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