什么是Noreferrer?
Noreferrer是一个HTML属性,用于增强网站安全性。它通常与target="_blank"
属性一起使用,用于在新标签页或窗口中打开链接。
为什么需要Noreferrer?
当使用target="_blank"
在新标签页中打开链接时,被打开的页面可以通过JavaScript的window.opener
属性访问原始页面。这可能导致安全漏洞,例如:
- 钓鱼攻击: 被打开的页面可能会伪装成原始页面,窃取用户的敏感信息。
- 恶意软件: 被打开的页面可能会在原始页面上安装恶意软件。
Noreferrer的作用
Noreferrer属性可以防止被打开的页面通过window.opener
属性访问原始页面,从而避免上述安全风险。此外,Noreferrer还会阻止浏览器发送Referer信息,保护用户隐私。
如何使用Noreferrer?
在HTML代码中,Noreferrer属性通过在<a>
标签中添加rel="noreferrer"
属性来实现。例如:
<a href="https://www.example.com" target="_blank" rel="noreferrer">链接文本</a>
Noreferrer的注意事项
- 与noopener的区别:
rel="noopener"
属性也可以增强网站安全性,但它与rel="noreferrer"
的作用略有不同。rel="noreferrer"
会阻止被打开的页面发送Referer信息,而rel="noopener"
则阻止被打开的页面访问原始页面。通常情况下,建议同时使用这两个属性,即rel="noopener noreferrer"
。 - 兼容性:
rel="noreferrer"
属性在现代浏览器中都得到了支持,可以放心使用。
总结
Noreferrer属性是一个重要的HTML属性,可以有效地增强网站安全性,并保护用户隐私。建议在所有使用target="_blank"
在新标签页中打开链接的场景下,都添加rel="noreferrer"
属性,以保护用户安全。