解决不蒜子 (busuanzi) 文章计数出错问题


参照 https://jdhao.github.io/2020/10/31/busuanzi_pv_count_error/

想法

发现文章访问统计数总是2次或者更多次地增加,本来是一件好事,但是我的强迫症犯了,这怎么能忍呢!于是我就找问题,发现主题的配置没有问题,内部js的逻辑也没有问题,就在我一筹莫展的时候,百度上发现了一篇文章,恍然大悟,原来是reffer搞的鬼。
不蒜子统计博客文章访问量就是通过 referer 来计算的,通过上面的分析,如果 Referrer Policy 是 strict-origin-when-cross-origin,不蒜子接收到的只有博客的域名,没有文章的具体路径,所以具体某个文章的 PV 统计会出现错误。
所以,要想正确统计博客每篇文章的 PV,可以把 Referrer Policy 设置为 no-referrer-when-downgrade。

在hexo-theme-matery主题中如何修改

theme/hexo-theme-matary/layout/layout.ejs中,找到


<% if (theme.busuanziStatistics && theme.busuanziStatistics.enable) { %>
<script async src="<%- theme.jsDelivr.url %><%- url_for(theme.libs.js.busuanzi) %>"></script>
<% } %>

中间添加一行,使用指定的referrer策略,就可以了
<meta name="referrer" content="no-referrer-when-downgrade">
然后重新生成和发布就可以了。


文章作者: 无名小卒
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 无名小卒 !
  目录