在 iframe 中隐藏引荐来源

14

使用iframe是否可能删除引用者?以下是案例:

我在http://www.mywebsite.com上有一个页面,其中包含一个<iframe>。就像这样:

<html>
 <head>...</head>
 <body>
  ...
<a href="#loadiframe">SHow Website</a>
  <iframe id="#loadiframe" src="http://www.iframetarget.tld">
  ...
 </body>
</html>

我想知道是否可以在不包含引荐者的情况下使用iframe加载目标网站(iframetarget.tld),无法确定它们是否正在加载我的网站(mywebsite.com)的页面。

这种可能吗?

注意:iframe将使用jQuery lightbox/colorbox进行加载。


1
你想愚弄Google.com吗? :) - Roko C. Buljan
不,它是用于加载外部网站而不会通知iframe目标所有者的。 - Andy
这正是我想表达的意思。 - Roko C. Buljan
3个回答

20

这些答案都对我没用,但是MDN的 iframe 参考文献指出将referrerpolicy设置为no-referrer可以实现此目的,并且这对我有效。在旧浏览器中的支持情况可能会好坏不一。

示例:

<iframe src="https://whatsmyreferer.com/" referrerpolicy="no-referrer" style="width: 100%; height: 300px;"></iframe>


8
<iframe id="#loadiframe" src='javascript:window.location.replace("http://www.iframetarget.tld")'>

它可以工作。


1
使用带有 JavaScript 位置重定向的 iframe 可以起作用:
<iframe style="display:none" src="javascript:parent.location.replace('http://www.whatismyreferer.com/'+(parent.location.hash||''))">

请注意,在某些浏览器中使用HTTP时,将始终发送最后一个引荐网址,这将是拥有iframe的域。在所有测试的浏览器上使用HTTPS(和有效证书)可以确保隐藏引荐网址。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接