nofollow、noopener和noreferrer标签各表示什么意思?

狂人 382 0

我们在做网站优化的过程中肯定有引用到外链的时候,大家基本都知道A标签加上nofollow可以防止网站权重流失,但如果加上rel="noopener noreferrer"这个标签可能会比较疑惑,那么各表示什么意思?可以正常传递权重吗?

nofollow、noopener、noreferrer

一、nofollow 标签是什么意思?

nofollow 标签是告诉搜索引擎不要通过使用此标记的链接传递任何权重值。大多数情况下,nofollow 标签用于阻止“PageRank”传递到网站上不重要的页面(例如登录、注册页面),或者一些外部URL链接。所以 nofollow 标签通常用于限制搜索引擎对链接进行追踪与权重传递。

二、noreferrer 标签是什么意思?

noreferrer 标记在单击链接时用于隐藏引用者信息。如果有人从使用此标记的链接到达你的网站,你的分析将不会显示谁提到该链接。相反,它会错误地显示为你的统计流量报告中的直接流量。

这个 noreferrer 标签在 WordPress 早些版本中是自动添加到 A 标签中,但实际上这并不是 WordPress 本身所做的改变,而是由 WordPress 使用的富文本编辑器 TinyMCE(WordPress 默认编辑器)造成的。目的就是防止网络钓鱼攻击,垃圾邮件发送者劫持你的网页,可能会访问你 的网站或访问机密信息。不过现在 TinyMCE 只强制插入 noopener 标签,已经不会强制插入“noopener noreferrer”标签。

三、noopener 标签是什么意思?

rel =“noopener”在新标签中打开链接时基本上不会打开它的开启者。这意味着,它的 window.opener 属性将是在新标签中打开一个链接时,而不是从那里的链接打开同一个页面为空。

rel =“noopener”一般都是搭配 target="_blank”同时使用,因为 target="_blank” 也是一个安全漏洞:新的页面可以通过 window.opener 访问你的窗口对象,并且它可以使用 window.opener.location = newURL 将你的页面导航至不同的网址。新页面将与你的页面在同一个进程上运行,如果新页面正在执行JavaScript,你的页面性能可能会受影响。

四、noopener 和 noreferrer 标签如何提高安全性?

noopener 和 noreferrer 标签是阻止漏洞利用的主动权,该漏洞利用在新标签中打开的链接。很少有成员知道这个漏洞,因此 WordPress 采取这一举措来提高用户的安全性。反向 Tabnabbing 是一种网络钓鱼攻击,攻击者用恶意文档替换合法且可信的页面选项卡。当有人打开新选项卡时,网络钓鱼者会通过 window.opener 检测引荐网址,并使用 window.opener.location = newURL 推送新的网址。

这样,没有人会有陷入网络钓鱼攻击的线索,因为他们已经从可靠的来源(WordPress 建立的网站)到达网站。而使用 rel ="noopener”会阻止网络钓鱼者获取有关链接源和与 referrer 链接相关的任何数据的信息。

五、nofollow、noopener 和 noreferrer 标签对SEO有什么影响?

这应该是大家最关心的问题,我们都知道 nofollow 标签会影响搜索引擎的抓取和索引链接以及传递权重,所以大家都比较担心 noopener 标签和 noreferrer 标签是否也会这样。

其实,noopener 标签和 noreferrer 标签对 SEO 没有任何影响。它们运行在分析/浏览器级别,而不是搜索引擎级别。虽然在监控反馈流量方面存在严重问题,但它不会影响站点内容的索引、抓取或排名方式。

最后总结一下就是:

对于写了target="_blank"的a标签,如果不带上 rel=“noopener noreferrer”属性,会存在以下问题:

1、性能问题:新打开的页面,和当前页面是在一个进程里的,如果新打开的页面比较耗资源,那当前页面的性能也会受到影响;
2、安全问题:新打开的页面可以通过window.opener操作上个页面,这可能会让你的上个页面重定向到不安全的钓鱼网站。

带上 rel=“noopener noreferrer”属性的话,新打开的页面是在新的进程中运行,不影响上个页面,而且新页面拿到的 window.opener = null,无法在获取上个页面进行操作。

发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~