
链接中加上rel="noreferrer"
恰好之前写过一篇文章分析过百度取消关键词显示的原来,原文贴过来分享一下,水平有限,欢迎指正。这段时间,关于百度全面取消referer关键词显示的消息在SEO圈子里热了起来,且在客户端可以通过document.referrer来获取,也就是说referer的发送实际上是一个浏览器行为,发送与否的决定权是在浏览器手里。虽然这样说,但是HTTP协议对什么情况下,浏览器该发送,什么情况下不该发送有着严格的规定。
下面几种情况下,可以控制浏览器是否发送referer:
1,当网站使用refresh字段进行跳转的时候,大多数浏览器不发送referer
2,从用户从一个HTTPS的网站点击链接到另一个HTTP的网站时,不发送referer
3,html5中,a标签的rel = “noreferrer”, 可以让浏览器不发送referer
4,使用Data URI scheme链接的,浏览器也不发送referer
5,使用Content Security Policy, 也可以让浏览器不发送referer
6,在html头部中使用meta标签来控制不让浏览器发送referer
大家可能就会想到,百度是在全站HTTPS化之后,不支持referer的,那肯定是HTTPS的关系,实际上对这方面有关注的可能了解到,在百度HTTPS化之后一段时间内,三方的流量统计工具还是可以统计到搜索关键词的,原因在于百度采取了跳转页的方式进行搜索关键词传递
当浏览器支持js时候,通过window.location.replace来跳转,不支持的时候,通过refresh进行跳转。注意name=”referrer”的alway字段,可以让浏览器总是发送referer,关于Meta referrer的介绍,可以点击这里。
那百度是如何做到不传递关键词的呢?其实细节不在这里,而是在搜索结果页面上,细心的人可能发现了,新的跳转页面url发生了两点变化:
1, HTTP变成HTTPS了
2, wd字段为空了。
这样以来,即使跳转页面中的meta
referrer字段为alway,关键词的字段也不会被第三方监控到了, 当然,其它的字段url,eqid第三方仍可监控(但是这并没有什么卵用)。
而在更早之前就采用HTTPS,并且取消关键词显示的Google直接在跳转页面中给referrer设置了origin的属性,这样一来第三方也只能监控到来源网站。
以下是对问题的回答:
根据上文的说明,一般情况下,从HTTPS站到HTTP站点的跳转,浏览器默认不发送referrer,可以通过大概两种办法让浏览器传送referrer:
1,在A站的head中加入<meta name="referrer"content="always">
2,B站也采用HTTPS
当然如果A站强制规定不发送referrer,B站又没有对A站的控制权,就像上午中提到的一样,我们是无法控制让第三方统计工具统计到百度搜索来源关键词的。
在HTML中a标签就是<a></a>或者大写字母A 。其中的a是 anchor 的缩写 。这些标签的作用是标明超连接的起始位置或目的位置。
<a> 标签可定义锚。锚有两种用法:
通过使用 href 属性,创建指向另外一个文档的链接通过使用 name 或 id 属性,创建一个文档内部的书签<a>元素最重要的属性是 href 属性,它指定链接的目标。
在所有浏览器中,链接的默认外观是:未被访问的链接带有下划线而且是蓝色的已被访问的链接带有下划线而且是紫色的活动链接带有下划线而且是红色的。
扩展资料:
html的a标签实例:
<a name="tips">Useful Tips Section</a>然后,我们创建指向相同文档中“有用的提示”部分的链接。
<a href="#tips">Visit the Useful Tips Section</a>或者,创建从另一个页面指向该文档中“有用的提示”部分的链接。
<a href="url/#tips">Visit the Useful Tips Section</a>在上面的代码中,我们将 # 符号和锚名称添加到 URL 的末端,就可以直接链接到 tips 这个命名锚了。
参考资料:HTML的a标签-百度百科
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)