【发布时间】:2010-10-28 17:22:38
【问题描述】:
我想我有一天看到了一种无需发送用户最初所在页面即可创建链接的方法。那可能吗?还是我们需要使用重定向器来隐藏上一个站点的位置?
编辑:如果您有一个服务器端选项的想法,可以匿名链接,欢迎您。
【问题讨论】:
我想我有一天看到了一种无需发送用户最初所在页面即可创建链接的方法。那可能吗?还是我们需要使用重定向器来隐藏上一个站点的位置?
编辑:如果您有一个服务器端选项的想法,可以匿名链接,欢迎您。
【问题讨论】:
根据您的情况,您可以使用 anonym.to 之类的东西 - 如果您信任这些服务。
根据您的标签,我假设您不想使用(或访问)PHP 等服务器端工具。在这种情况下,这将是棘手的。我不知道仅使用 HTML/Javascript 是否有可能。
【讨论】:
查看this section on Wiki 的推荐人隐藏。
大多数主要浏览器在被指示使用“刷新”HTTP 标头进行重定向时不会发送引用标头。但是,W3C. 不鼓励这种重定向方法
【讨论】:
没有办法做到这一点。
事实上,这个参数是在客户端控制的。根据浏览器的不同,有些只是从不发送推荐人或假货。
你不应该以任何方式做到这一点。
但这里有两个提示:
【讨论】:
我建议使用https://anon.click/ 之类的服务 在 HTML5 中还有 rel="noreferrer" 可以使用。
【讨论】:
<a href="example.com" rel="noreferrer">Example</a>
http://www.w3.org/TR/html5/links.html#link-type-noreferrer noreferrer 关键字可以与 a 和 area 元素一起使用。此关键字不会创建超链接,但会注释该元素创建的任何其他超链接(隐含的超链接,如果没有其他关键字创建超链接)。
表示点击链接时不会泄露referrer信息。
如果用户代理遵循由具有 noreferrer 关键字的 a 或 area 元素定义的链接,则用户代理不得在请求中包含 Referer (sic) HTTP 标头(或其他协议的等效标头)。
【讨论】:
我使用了我在这里看到的多个答案的组合。
<a href='data:text/html;charset=utf-8,<html><head><meta http-equiv="refresh" content="0;url=http://www.google.com/"></head><body><a href="http://www.google.com/" rel=noreferrer>Open Link</a></body></html>' rel=noreferrer target=_blank>A link without referer</a>
我使用 Firefox、Chrome、iOS Safari 和三星 Android 默认浏览器进行了测试。它有效。
即使浏览器发送了referer,也不会是网站,因为页面地址是“data:...”。这就是为什么它比创建一个这样做的页面要安全得多。