如何从html中的链接发送引用者

时间:2009-05-25 11:04:58

标签: php html

我想有一天我看到了一种创建链接的方法,而不会发送用户最初的页面。那可能吗?或者我们是否需要使用重定向器来隐藏上一个站点的位置?

编辑:如果你有一个服务器端选项来匿名链接,我们欢迎你。

8 个答案:

答案 0 :(得分:8)

<a href="example.com" rel="noreferrer">Example</a>

http://www.w3.org/TR/html5/links.html#link-type-noreferrer noreferrer 关键字可以与a和area元素一起使用。此关键字不会创建超链接,但会注释该元素创建的任何其他超链接(隐含的超链接,如果没有其他关键字创建一个超链接)。

表示在关注链接时不会泄露任何引荐来源信息。

如果用户代理遵循由具有noreferrer关键字的a或area元素定义的链接,则用户代理不得在请求中包含Referer(sic)HTTP标头(或其他协议的等效标头)。

答案 1 :(得分:6)

查看引荐来隐藏的this section on Wiki

  

大多数主流浏览器在使用“刷新”HTTP标头指示重定向时,不会发送引用标头。但是,W3C.

不鼓励使用这种重定向方法

答案 2 :(得分:1)

请参阅此主题以获取referer

的服务器端设置的基本示例

PHP - Referer redirect script

答案 3 :(得分:1)

没有办法做到这一点。

实际上这个参数是在客户端控制的。根据浏览器的不同,有些人永远不会发送引用或伪造。

你不应该以任何方式这样做。

但这里有两个提示:

  • 使用重定向页面
  • 向用户提供复制/粘贴功能,然后打开一个新窗口让他能够粘贴并转到。

答案 4 :(得分:1)

我是新来的,所以我无法发表评论,只能做出答案。

但是这个问题(虽然陈旧)与。几乎相同。

Stop link from sending referrer to destination

我在试图解决这个问题时发现了一个解决方案。

答案 5 :(得分:1)

我建议使用像https://anon.click/这样的服务 同样在HTML5中,可以使用rel =“noreferrer”。

答案 6 :(得分:1)

我使用了我在这里看到的多个答案的组合。

<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和Samsung Android默认浏览器进行了测试。它有效。

即使浏览器发送引荐来源,它也不是网站,因为页面地址是“data:...”。这就是为什么它比创建这样做更安全的原因。

答案 7 :(得分:0)

根据您的具体情况,您可以使用anonym.to之类的内容 - 如果您信任这些服务。

从您的标签我假设您不想使用(或有权访问)PHP等服务器端工具。在这种情况下,这将是棘手的。我不知道只有HTML / Javascript才能实现这一点。