如何统计 Hexo 网站的访问地区和IP
前言
在 Website FAQ,实现了使用"卜算子"来统计网站访问人数,但是"卜算子"仅可以提供访问人数的统计,进一步的信息却无法提供。那么,如果想知道过往访客来自哪些国家和地区,显示网站访问实时动态的信息,应该怎么做呢?
FYI 本博客实时更新于 个人网站 - 统计Hexo网站的访问地区和IP,请移步阅读最新内容。
clustrmaps.com 是美国的一家数据网站,能够汇总公共记录来分析美国城市的社会人口和商业环境。
Add the ClustrMaps hit tracker to your site or blog and see a real-time map of your visitors from around the world! Proudly show and grow your hidden community of interest.
网址提供了生成访问者地址分布图的代码,可以嵌入到网站或博客中,来显示来自世界各地访问者的实时地图,有助于发展您隐藏的兴趣社区。最重要的是,这个功能是免费的,能够满足个人网站的需求,如下图所示。
配置 clustrmaps
- 网站注册后,访问 Enter your website address 添加自己的网站地址,选择免费的服务。
- 选择自己喜欢的插件格式,现在 Hexo 的 Next 两种主题都是支持的,但是自己比较喜欢 Map widget 的主题。
- 点击选择后,拷贝网站出现的脚本 javascript代码,粘贴到Next主题下某个位置。博主测试过如下两个位置,挑选一个配置即可以。推荐位置二,自定义程度高。
- 位置一:将代码插入到 themes\next\layout\_partials\header.swig 的最后。
{% endif %}
</nav>
<!-- Insert clustrmaps.com -->
<script type='text/javascript' id='clustrmaps' src='//cdn.clustrmaps.com/map_v2.js?XXX'></script>
{% include '../_custom/header.swig' %}
- 位置二:将代码插入到 \themes\next\layout\_macro\sidebar.swig 文件的 图层。
<aside id="sidebar" class="sidebar">
{% if theme.sidebar.onmobile %}
<div id="sidebar-dimmer"></div>
{% endif %}
<div class="sidebar-inner">
{% set display_toc = is_post and theme.toc.enable or is_page and theme.toc.enable %}
<!-- Insert clustrmaps.com -->
<script type='text/javascript' id='clustrmaps' src='//cdn.clustrmaps.com/map_v2.js?
cl=ffffff&w=a&t=n&d=4sW93oXXX0e8'></script>
{% if display_toc and toc(page.content).length > 1 %}
- 重新部署网站,就可以在首页看到实时访客来源图,如我的网站首页所示。另外,点击地图,可以看到更详细的信息,包括访客的地图、浏览设备以及IP。