zoukankan      html  css  js  c++  java
  • 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 />  
    <?php  
    echo '[' . $_SERVER['HTTP_REFERER'] . ']';  
    ?> 

      

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

    []

      

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

    [http://localhost/hellophp/referer.php]  

      

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

    [http://localhost/hellophp/referer.php?p=referer1] 

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

    [http://localhost/hellophp/referer.php?p=referer2]  

      

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

    [http://localhost/hellophp/referer.php?p=referer3]  

      

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

    []

      

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

  • 相关阅读:
    CSS 浮动
    函数defined
    SVN提交冲突
    抽象方法和抽象类
    Teco测试总结
    面向对象三大特性(封装,继承,多态)之多态
    PHP工厂模式的简单实现
    DOM 访问节点
    c程序的执行过程
    PHP实现菱形与杨辉三角形【php趣味案例】
  • 原文地址:https://www.cnblogs.com/eastson/p/2612728.html
Copyright © 2011-2022 走看看