Home > Backend Development > PHP Tutorial > Why is the `$_SERVER[\'HTTP_REFERER\']` Variable Empty in PHP?

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

Linda Hamilton
Release: 2024-10-30 01:28:02
Original
519 people have browsed it

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

How to Track Referrer URLs in PHP

Getting the referrer URL can be useful in tracking visitor behavior and understanding how your website is being accessed. To retrieve the referrer URL with PHP, you can use the $_SERVER['HTTP_REFERER'] variable.

Empty Referrer URL

If $_SERVER['HTTP_REFERER'] is empty, there are a few possible reasons:

  • Users may have bookmarked your page.
  • Users may have manually entered the URL in their browser.
  • Users may have posted to your page programmatically without setting the referrer.

Complete Server Variables

To investigate the server variables further, here's a complete list of the variables in your $_SERVER array:

<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>
Copy after login

As you can see, the _ character is missing in all of the variable names due to a typo in the provided code.

The above is the detailed content of Why is the `$_SERVER[\'HTTP_REFERER\']` Variable Empty in PHP?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template