首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查访问者已从哪个链接重定向

问如何检查访问者已从哪个链接重定向
EN

Stack Overflow用户
提问于 2017-03-20 10:37:27
回答 2查看 83关注 0票数 2

我想检查每个访问者的来源,并将这些信息存储在cookie中。

这个想法是:当有人去谷歌搜索维基百科并点击第一个结果时,这就是谷歌所生成的

代码语言:javascript
复制
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&sqi=2&ved=0ahUKEwiB8aaX8eTSAhWCNJoKHbYqDFsQFggnMAE&url=https%3A%2F%2Fwww.wikipedia.org%2F&usg=AFQjCNFoqWBYY9IYRUE6eu9l7l73Wk5wYw&bvm=bv.149760088,d.bGs

我不知道在PHP中是否有可能将"Google.com“作为重定向的来源。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-20 10:40:41

如果存在,$_SERVER['HTTP_REFERER']将为您提供参考页面的URL。在直接访问的情况下(从书签或用户直接输入url ),您将什么也得不到。

在PHP中使用HTTP_REFERER

PHP中的HTTP存储在$_SERVER超级全局中,可以从PHP代码中的任何地方引用,如下面的示例所示,这将简单地将其写入浏览器:

代码语言:javascript
复制
echo $_SERVER['HTTP_REFERER'];

如果已经设置了HTTP_REFERER,那么就会显示它。如果不是,那你就什么也看不到了。如果没有设置它,并且设置了错误报告以显示通知,那么您将看到这样的错误:

注意:未定义的索引:第3行中的/path/ To /filename.php中的HTTP_REFERER,以防止在通知打开时出现此错误(我总是使用notices开发),您可以这样做:

代码语言:javascript
复制
if(isset($_SERVER['HTTP_REFERER']))
{
    echo $_SERVER['HTTP_REFERER'];
}

为了获得域表单,引用程序可以使用PHP的parse_url()函数:示例:

代码语言:javascript
复制
$url = '//www.example.com/path?name=shakti';
var_dump(parse_url($url));

您将得到一个输出如下:

代码语言:javascript
复制
array(3) {
  ["host"]=>
  string(15) "www.example.com"
  ["path"]=>
  string(5) "/path"
  ["query"]=>
  string(17) "name=shakti"
}
票数 3
EN

Stack Overflow用户

发布于 2017-03-20 10:50:07

使用$_SERVER‘’HTTP_REFERER‘,这将返回用户被重定向的上次访问的url。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42901427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档