在百度统计的数据中,查看网站的实时访客或者来源,有时候,会发现有一些乱七八糟的用户流量,这并不是网站被攻击或者被刷流量了,而是百度统计被被恶意刷广告,只是针对统计的行为,不影响网站的排名。
现象:
1、访问的链接,链接中有问号?,并包含其他网站的网址或广告
2、搜索词,是一句话广告,甚至带微信号等
解决方法:
1、百度统计的排除设置,排除这些用户流量
(1)点击【管理】,再点击【统计规则设置-过滤规则设置】,在【受访域名统计规则】中,点击【白名单】,在下方添加自己网站的域名。
(2)点击【管理】,再点击【统计规则设置-过滤规则设置】,点击【排除IP地址】,排除来自某些特点IP的访问,使得统计报告中不包含此部分流量,最多排除20个IP地址。(IP地址可以从实时访客获取)
(3)点击【管理】,再点击【统计规则设置-过滤规则设置】,点击【排除搜索词】,排除百度统计报告中某些非百度推广来源的特定搜索词。最多排除100个搜索词。
2、修改百度统计代码
(1)删除原有百度统计,理由:刷统计广告并非访问网站,而是通过机器爬取到统计ID,然后直接刷的统计链接地址,因此屏蔽IP无效的。
(2)新创建一个百度统计,理由:新创建的统计唯一ID变更,因为刷广告的无法刷到。
(3)新创建的百度统计,稍微进行一下手动修改统计,给代码变样,增加获取难度。理由:增加机器获取统计ID的难度,人为获取和模拟浏览器行为获取则无效。
百度修改/变种后统计样式(2个):
<font size="3" face="微软雅黑"><script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src="htt"+"ps://hm.ba"+"idu.com/h"+"m.js?0350000000000"+"0000000000000000000";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
</font>
<font size="3" face="微软雅黑"><script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = ['htt','ps://','hm','.bai','du.','com','/h','m.js?','0350000000000','0000000000000000000'].join('');
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
</font>
注意:
(1)代码中的:03500000000000000000000000000000,为统计的唯一ID,修改成自己网站的。
(2)修改统计代码样式并不能完全杜绝刷百度统计广告的行为,只是增加了难度。
(3)重新添加统计代码,之前的统计数据就清空了。
3、加密百度统计代码
由于之前的统计ID已经泄漏了,因此需要重新生成一个新的统计ID。具体做法是在统计后台将现有的站点删除,新建站点统计,重新获取新的统计ID。
拿到新的统计ID后,使用站长js加密工具 https://tool.chinaz.com/tools/jscodeconfusion.aspx
把百度统计的js代码贴入,进行加密,获取加密后的代码,并加到网站底部模板中。
最后,要做的就是测试统计代码是否有效,判断有效即统计后台能正常统计到访客数据即可。
此方法同时也适用于其他的流量统计工具,比如:51la、CNZZ、谷歌Analytics等。
4、其他
(1)在robots文件中,增加禁止抓取规则,禁止蜘蛛抓取这类链接。
(2)在服务器上设置该类链接禁止访问。