Rumah > pembangunan bahagian belakang > tutorial php > [转] PHP之HTTP_REFERER

[转] PHP之HTTP_REFERER

WBOY
Lepaskan: 2016-06-23 14:36:01
asal
3448 orang telah melayarinya

转载自: http://blog.csdn.net/amonest/article/details/6432530

PHP的$_SERVER['HTTP_REFERER']记录了前一个(跳转到本页的)锚标签的地址, 如果直接用浏览器打开, 该参数为空.

看UCHome和ECShop源码的时候,发现经常会用到$_SERVER['HTTP_REFERER']的值。HTTP REFERER是Header的一部分,当浏览器向WEB服务器发送请求的时候,一般会带上HTTP REFERER,告诉服务器我是从哪个页面链接过来的,服务器籍此可以获得一些信息用于处理。比如从我主页上链接到一个朋友那里,他的服务器就能够从HTTP REFERER中统计出每天有多少用户点击我主页上的链接访问他的网站。下面自己写了一个例子,来说明HTTP_REFERER的各种变化。

 

请将下面的代码保存到一个PHP文件中,文件名为referer.php:

<a href="?p=referer1" mce_href="?p=referer1">referer1</a> | <a href="?p=referer2" mce_href="?p=referer2">referer2</a> | <a href="?p=referer3" mce_href="?p=referer3">referer3</a><hr /><?phpecho '[' . $_SERVER['HTTP_REFERER'] . ']';?>
Salin selepas log masuk

在网址栏输入:http://localhost/hellophp/referer.php,执行结果如下:

[]

点击连接refer1,执行结果如下:

[http://localhost/hellophp/referer.php]
Salin selepas log masuk

点击连接refer2,执行结果如下:

[http://localhost/hellophp/referer.php?p=referer1]
Salin selepas log masuk

点击连接refer3,执行结果如下:

[http://localhost/hellophp/referer.php?p=referer2]
Salin selepas log masuk

点击连接refer1,执行结果如下:

[http://localhost/hellophp/referer.php?p=referer3]
Salin selepas log masuk

在网址栏输入:http://localhost/hellophp/referer.php?p=referer2,执行结果如下:

[]

 

 从上面的过程我们可以得出这样的结论:当从网址栏向WEB服务器发出请求时,$_SERVER['HTTP_REFERER']的值为空;当从链接向WEB服务器发出请求时,$_SERVER['HTTP_REFERER']的值就是发出请求的网址。

 

 

 

 

Label berkaitan:
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan