PHP无法获取Referer问题排查

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

测试结果:

同一个页面,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

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航