前言
对于个人站长来说,知道自己的网站每日浏览量,点击量,分析进入你网站的人群是一件很有意思的事情。只需要将简单的代码集成进你的博客,就可以达到这个效果。每个搜索引擎都继承了自己的统计代码。例如百度,谷歌等。还有一些第三方的服务,例如cnzz。
知识点
Referrer是什么?
Referrer可以理解为监管和控制允许访问来源信息行为的代码,比如用户从百度点击你的网很赞链接进入到你的网站,浏览器会将当前信息放在请求头中发送到你的网站,在你的网站中集成相对应的代码,你就可以知道进入你网站的用户分别是从哪个地方进来的。
遇到的问题
在我集成百度的时候,一直提示 Referrer被禁用。谷歌了一下,大都是说 meta标签中设置了禁用 referrer 。但是反复检查前端代码,在html中并没有找到禁用 referrer 的代码。奇哉怪也。
既然如此,说明大概率是环境中某些配置导致默认 referrer 为 no referer导致了这个问题。秉着头痛医头,脚痛医脚的原则,将 referrer 设置为允许应该就可以了。由于统计代码大都是以js的方式加在前端模版的header或者footer中,在统计代码前加入:
<script>
// 追加meta标签
const jsNode = document.createElement('meta');
jsNode.name = 'referrer';
jsNode.content = 'unsafe-url';
document.head.appendChild(jsNode);
// 百度统计代码
var _hmt = _hmt || [];
...
</script>
可能有脑子灵光的小伙伴要问了,你费这么大劲写几行js在head标签中加入mate标签,直接在head中加入节点代码不就好了?
<meta name="referrer" content="unsafe-url">
是的,这确实是个方法。但是由于本人使用的管理后台中有配置统计代码的入口,可以直接方便的将追加节点代码加统计代码之前。就不用费劲去修改模版代码了,既方便又优雅(笑)。
后续
在使用js代码追加节点修改之后,百度统计已经可以统计到站点的数据了。但是几十分钟后发现,百度统计依然提示 referrer被禁用。可能和js脚本的执行策略有关。我想用上面的直接在head中追加一个meta标签应该不会有这个问题了。