Pan*_*cho 1 php http-referer header http
在阅读我的问题之前,请注意:我知道 HTTP_REFERER 可以在客户端浏览器中被欺骗或禁用。我不关心我的用例,而且我正在测试的浏览器肯定会传递引用信息。
我的问题是这样的:
我创建一个名为 page1.php 的文件:
<?php
header("Location: page2.php");
Run Code Online (Sandbox Code Playgroud)
我创建第二个文件,名为 page2.php:
<?php
echo "Referred by \"" . $_SERVER['HTTP_REFERER'] . "\"";
Run Code Online (Sandbox Code Playgroud)
然后从我的客户端浏览器调用:
我期望 page2.php 的结果输出为:
但它显示没有引用信息,如下所示:
由......推荐 ””
谁能告诉我为什么引用者为空?
非常感谢!
引用者包含用户访问的最后一个实际页面。如果您example.com/a.html在地址栏中输入 URL,它会立即重定向到/b.html,那么您根本就没有真正访问过a.html;在此之前,没有您“来自”的页面。
要在重定向后查看任何引荐来源网址,重定向页面必须已从某处链接,即
a.html --link--> b.html --redirect--> c.html
Run Code Online (Sandbox Code Playgroud)
然后c.html你会看到a.html作为推荐人。如果您从 开始这条链b.html,则没有引用者。