Maison  >  Article  >  développement back-end  >  Pourquoi la variable `$_SERVER[\'HTTP_REFERER\']` est-elle vide en PHP ?

Pourquoi la variable `$_SERVER[\'HTTP_REFERER\']` est-elle vide en PHP ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-30 01:28:02455parcourir

Why is the `$_SERVER['HTTP_REFERER']` Variable Empty in PHP?

Comment suivre les URL de référence en PHP

Obtenir l'URL de référence peut être utile pour suivre le comportement des visiteurs et comprendre comment votre site Web est consulté . Pour récupérer l'URL de référence avec PHP, vous pouvez utiliser la variable $_SERVER['HTTP_REFERER'].

URL de référence vide

If $_SERVER['HTTP_REFERER'] est vide, il y a plusieurs raisons possibles :

  • Les utilisateurs peuvent avoir ajouté votre page à leurs favoris.
  • Les utilisateurs peuvent avoir saisi manuellement l'URL dans leur navigateur.
  • Utilisateurs peut avoir publié sur votre page par programme sans définir le référent.

Variables complètes du serveur

Pour approfondir l'étude des variables du serveur, voici une liste complète des variables dans votre tableau $_SERVER :

<code class="php">[DOCUMENT_ROOT] => /home/anything/public_html/design
[GATEWAY_INTERFACE] => CGI/1.1
[HTTP_ACCEPT] => text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/webp, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
[HTTP_ACCEPT_ENCODING] => gzip, deflate
[HTTP_ACCEPT_LANGUAGE] => en-US,en;q=0.9
[HTTP_CACHE_CONTROL] => no-cache
[HTTP_CONNECTION] => Keep-Alive
[HTTP_COOKIE] => __utma=76630272.1468291432.1367655794.1367669576.1367674157.3; __utmb=76630272.1.10.1367674157; __utmc=76630272; __utmz=76630272.1367655794.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)
[HTTP_HOST] => ---- CENSORED ----
[HTTP_USER_AGENT] => Opera/9.80 (Windows NT 6.1) Presto/2.12.388 Version/12.15
[PATH] => /bin:/usr/bin
[QUERY_STRING] => ""
[REDIRECT_STATUS] => 200
[REMOTE_ADDR] => 5.15.68.79
[REMOTE_PORT] => 57897
[REQUEST_METHOD] => GET
[REQUEST_URI] => /referer.php
[SCRIPT_FILENAME] => /home/anything/public_html/design/referer.php
[SCRIPT_NAME] => /referer.php
[SERVER_ADDR] => ---- CENSORED ----
[SERVER_ADMIN] => ---- CENSORED ----
[SERVER_NAME] => ---- CENSORED ----
[SERVER_PORT] => 80
[SERVER_PROTOCOL] => HTTP/1.1
[SERVER_SIGNATURE] => Apache/2.2.19 (Unix) mod_ssl/2.2.19 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 Server at ---- CENSORED ---- Port 80
[SERVER_SOFTWARE] => Apache/2.2.19 (Unix) mod_ssl/2.2.19 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635
[UNIQUE_ID] => UYUNcUPeiDsAABkR2eYAAAAj
[PHP_SELF] => /referer.php
[REQUEST_TIME] => 1367674225
[argv] => array()
[argc] => 0</code>

Comme vous pouvez le constater, le caractère _ est manquant dans tous les noms de variables en raison d'une faute de frappe dans le code fourni.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn