在以下情况下,HTTP 引荐来源网址是什么:
- 用户单击网站上的链接并到达另一个网站,该网站正在热链接来自第三个网站的图像,该图像上的引荐来源是什么。
- 用户单击一个链接,该链接转到另一个网站,该网站使用 META Refresh 将他们发送回第一个网站。
- 用户点击一个链接到另一个网站,其中包含一个 iframe 到第二个站点上的第二个页面,引荐来源是原始站点还是第二个站点?
我似乎找不到答案,如果我在这里找不到答案,那么我将制作页面并对其进行测试。
在以下情况下,HTTP 引荐来源网址是什么:
我似乎找不到答案,如果我在这里找不到答案,那么我将制作页面并对其进行测试。
我懒得尝试解释所有给定的场景,但是为了帮助测试,可以轻松地创建一个 PHP 脚本来返回一个图像,告诉我们引荐来源是什么:
<?php
header("Content-type: image/png");
header("Cache-control: no-cache");
header("Pragma: no-cache");
header("Expires: -1");
$s = "Referrer: " . $_SERVER['HTTP_REFERER'];
$im = @imagecreate(500, 13)
or die("Cannot Initialize new GD image stream");
$black = imagecolorallocate($im, 0, 0, 0);
imagecolortransparent($im, $black);
$red = imagecolorallocate($im, 255, 0, 0);
imagestring($im, 3, 0, 0, $s, $red);
imagepng($im);
imagedestroy($im);
?>
如果网站以 HTTP 重定向响应,例如302 Moved Temporarily
,那么您的浏览器仍会发送带有重定向请求的原始引荐来源网址:
<?php
header("Location: http://[..]/referrer-to-img/referrer.php?redirected");
?>
请注意,例如在 Mac 上的 Safari 中,Command-click(在新选项卡中打开链接)和 Command-Option-click(新窗口)确实会设置该链接的引用者,同时选择“在新选项卡中打开链接上下文菜单中的“选项卡/窗口”(右键单击后)不会.
快乐的测试。;-)
引用者始终是引用当前资源的文档/资源。所以:
推荐人将是第三个网站。
引用者始终是 HTTP 请求的主机。
推荐人将是不同的网站。
即使页面使用元刷新,它仍然是 HTTP 请求,并且适用之前的规则。
推荐人将是第二个网站。
iframe
请求的处理方式与新浏览器窗口中的请求一样。
首先,HTTP Referer 可能是各种隐私感知软件客户端甚至在途中的某些网关/代理上可能变成的任何东西。
然而,让我来分析一下:
1.第二个网站 2.第二个网站 3. 很确定(不确定),但第二个站点似乎仍然是正确的响应。
无论浏览器发送请求时当前页面是什么(无论是图像、重定向等),[通常]都会发送到请求 URL 下的服务器。[再一次,如果没有任何隐私设备改变这个和其他 HTTP 标头值]
猜的,但我很有信心: