码迷,mamicode.com
首页 > Web开发 > 详细

PHP无法获取Referer问题排查

时间:2015-08-21 00:06:57      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:

测试结果:

技术分享

 

同一个页面,2次打开,第一次能获取到Referer第二次获取不到,很好奇原因所在。

 

test1.php代码是:

<?php

echo ‘测试来源:直接载入页面<br/>‘;

echo ‘<a href="test_cookie.php">进入页面</a><br/>‘;

echo ‘测试来源:新窗口打开<br/>‘;

echo ‘<a target="_blank" href="test_cookie.php">进入页面</a><br/>‘;

test_cookie.php的代码为:

<?php

date_default_timezone_set(‘Asia/Shanghai‘);//设置默认时区
header(‘content-type:text/html; charset=utf8‘);//设置返回头信息

echo date(‘Y-m-d H:i:s‘);
echo "<br/>\r\n";

echo ‘PHP获取Refer是:‘;
$refer=isset($_SERVER[‘HTTP_REFERER‘])?$_SERVER[‘HTTP_REFERER‘]:‘No refer found‘;
echo $refer;
echo "<br/>\r\n";

echo ‘JS获取Refer是:‘;
    echo "<script>document.writeln(document.referrer);</script>";
echo "<br/>\r\n";

  

极度好奇是什么原因造成的第一次能获取,第二次不能获取。

 

环境是LNMPA,官方是http://lnmp.org/lnmpa.html

 

Mac下用charles抓包

2次请求test1.php的header是一致的。

2次请求test_cookie.php的header是一致的。

 

那么问题来了,什么原因造成的2次完全一模一样的请求,PHP取不到refer。跪求解。

 

更多精彩话题关注小五博客http://www.lingdonge.com

PHP无法获取Referer问题排查

标签:

原文地址:http://www.cnblogs.com/kylexy/p/4746523.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!