首页  >  文章  >  后端开发  >  为什么 PHP 中的 `$_SERVER[\'HTTP_REFERER\']` 变量为空?

为什么 PHP 中的 `$_SERVER[\'HTTP_REFERER\']` 变量为空?

Linda Hamilton
Linda Hamilton原创
2024-10-30 01:28:02451浏览

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

如何在 PHP 中跟踪引用网址

获取引用网址对于跟踪访问者行为和了解您的网站如何被访问非常有用。要使用 PHP 检索引用网址,您可以使用 $_SERVER['HTTP_REFERER'] 变量。

空引用网址

如果 $_SERVER['HTTP_REFERER']为空,有以下几个可能的原因:

  • 用户可能已为您的页面添加了书签。
  • 用户可能已在浏览器中手动输入了 URL。
  • 用户可能已以编程方式发布到您的页面,而没有设置引荐来源网址。

完整服务器变量

要进一步研究服务器变量,这里有完整的变量列表在 $_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>

如您所见,由于提供的代码中存在拼写错误,所有变量名称中都缺少 _ 字符。

以上是为什么 PHP 中的 `$_SERVER[\'HTTP_REFERER\']` 变量为空?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn