測試結果:
<?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