【问题标题】:PHP HTTP_REFERER and anchor tag hrefPHP HTTP_REFERER 和锚标签 href
【发布时间】:2019-04-08 18:12:56
【问题描述】:

我正在尝试使用$_SERVER['HTTP_REFERER'] 获取目标网站上的引荐网址。

example.com

<a href="example2.com">Click Me</a>
<a href="example2.com/page/2">Click Me</a>
<a href="example2.com/page/3">Click Me</a>
<a href="example2.com/page/4">Click Me</a>

example2.com

echo $_SERVER['HTTP_REFERER'];

结果为空白。我点击了链接。我该如何解决这个问题? $_SERVER['HTTP_REFERER'] 可以与外部域一起使用吗?

【问题讨论】:

    标签: php


    【解决方案1】:

    将用户代理引向当前页面的页面地址(如果有)。这是由用户代理设置的。不是所有的用户代理都会设置这个,有些提供修改 HTTP_REFERER 作为一个特性的能力。简而言之,它不能真正被信任。

    参考PHP Manual

    为了防止这个错误尝试

    if(isset($_SERVER['HTTP_REFERER'])) {
      echo $_SERVER['HTTP_REFERER'];
    }
    

    echo isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
    

    【讨论】:

      【解决方案2】:

      它不能被依赖。

      将用户代理引至 当前页面。这是由用户代理设置的。并非所有用户代理都会 设置这个,有些提供修改 HTTP_REFERER 作为 特征。简而言之,它不能真正被信任。

      PHP Manuel

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-11
        • 1970-01-01
        • 2010-11-10
        • 1970-01-01
        • 1970-01-01
        • 2015-09-23
        相关资源
        最近更新 更多