51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

【实用Docker推荐】搭建umami——统计网站数据(自定义统计脚本)

前言

作为一个建站博主,通常会想要获取网站的访问数据,以此来调节网站内容或查看网站的流量情况,例如:uv、pv等。

PV 是指页面访问量,即Page View,用户每次对网站的访问均被记录,用户对同一页面的多次访问,是访问量的累计。 UV是指独立访问用户数,即Unique Visitor,访问网站的一台电脑客户端为一个访客,根据IP地址来区分访客数。

据了解市面上有许多提供此服务的工具,原理都是类似的。提供一个 js 脚本放在页面 head 部分,当用户访问页面的时候会调用 js 脚本,以此来达到统计数据的目的。

51.LA 、Google Analytics、Umami三个统计工具对比

本文将介绍使用过的三个工具:51.LA 、Google Analytics、Umami

51.La

51.La优点

lincol29 一开始使用的51进行统计数据,拥有非常细致的界面,可以查看许多数据,是三款工具中数据最详细的一款产品。

1、概况可以看到最近几日的数据对比,新老访客以及历史峰值数据

51la主界面

2、查看入口页以及来路。

51la入口页

3、查看用户访问时长以及浏览页数,能看到用户对博客的满意度。如在博客浏览多个压面,证明你的博客文章具有吸引力。

51la访问时长和页面

51.La缺点

在网上刷到几篇文章,关于51.La。貌似是统计脚本页面会跳转到黄色网站,我也是听到这个果断将此统计脚本下线。

如你的博客网站被跳黄色网站,将会被搜索引擎视为垃圾网站,黄色、赌博、欺诈信息。

下面为google搜索内容

跳色情你工作

Google Analytics

谷歌的官方业务,因为谷歌在国内不支持,有些时候 js 脚本不会执行,所以数据不是很准确。

GA数据

可以使用代理脚本,但lincol29 没尝试过,小伙伴们可以自行测试一下。

谷歌分析(google analytics)报错解决方法:https://www.howsoho.com/post/google-analytics-proxy

谷歌分析(google analytics)是非常好用的网站分析工具,由于需要上传分析数据,如果网站主要目标在国内,那么用户的浏览器就会报 ERR_SSL_PROTOCOL_ERROR 的错误,就是访问不了谷歌分析的地址,原因不多说,这边文章来说说如何解决这个问题。

Umami

此工具也是 lincol29 目前推荐使用的,上面两款统计工具都是使用的官方服务,umami 可以支持 docker 部署,将数据掌握在自己手中。

下图为 umami 统计主页

umami主页

准备工作

按需修改工作目录:

work=~/docker/umami && mkdir -p $work && cd $work

按需放行端口,开启防火墙: 可在宝塔面板或者阿里云服务器开启端口以及安全组策略

centos系统是Firewall防火墙。

firewall-cmd --zone=public --add-port=3210/tcp --permanent

命令含义:

 --zone                      #作用域
 --add-port=80/tcp  #添加端口,格式为:端口/通讯协议
 --permanent           #永久生效,没有此参数重启后失效

重启防火墙

 firewall-cmd --reload

debian系统使用 ufw

sudo ufw allow 3210/tcp
sudo ufw allow 3210/udp

配置yml文件

新建一个docker-compose文件,

vim $work/docker-compose.yml

配置自定义脚本名称(推荐)

V1 版本是使用官方的 umami.js 脚本名称

目前许多用户的浏览器都会安装广告拦截插件,例如:AdGuardAdBlock等。这些插件是根据脚本名称来拦截,如果使用umami 默认的脚本名称,可能会被一些过滤规则拦截,因此我们可以自定义脚本名称,实现更准确地网站数据追踪。

V2 版本是使用的 script.js 脚本名称。

官方也提供了便捷的修改方式,可以在 Vercel 中已经部署的 umami 服务中增加 TRACKER_SCRIPT_NAME 环境变量,配置为自定义名称。

TRACKER_SCRIPT_NAME: lincol29   #统计脚本名称
version: '3.3'
services:
  umami:
    container_name: umami_app
    image: elestio/umami:latest
    ports:
      - "3210:3000"
    environment:
      DATABASE_URL: postgresql://umami:umamipassword@db:5432/umami
      DATABASE_TYPE: postgresql
      APP_SECRET: xxx #秘钥,自定义 
      TRACKER_SCRIPT_NAME: lincol29   #统计脚本名称
    depends_on:
      - db
    restart: always
`db:
container_name: postgres15_db
image: postgres:15-alpine
environment:
POSTGRES_DB: umami`
`
POSTGRES_USER: umami`
`
POSTGRES_PASSWORD: umamipassword
volumes:
- ./data:/var/lib/postgresql/data
restart: always
`

上线服务:

docker-compose up -d

端口和账号

默认账号:admin

默认密码:umami

必须进行反向代理 使用 Https 加域名,才可以查看访问数据。使用 Nginx 进行反代即可。

V1 和 V2 版本的 umami 对比

V2 版本

【实用Docker推荐】搭建umami——统计网站数据(自定义统计脚本) 1

V1 版本

【实用Docker推荐】搭建umami——统计网站数据(自定义统计脚本) 2

很直观的表现,两个版本统计数据相差很大。我使用 51.la 和 Google static 统计,发现数据和 V2 版本差不多。V1 版本数据非常不真实。

如果你是使用的V1版本,可以查看官方文档迁移教程:https://umami.is/docs/migrate-v1-v2

我的建议是立即升级最新版本

拓展资料

网站地图 -- Lincol29 : 在这个网站地图中,你可以找到关于C#、常用生产力工具、面试面经、Docker、WordPress、RSS、等各类技术主题的教程和分享,以及对本站内容快速导航。

赞(0)
未经允许不得转载:工具盒子 » 【实用Docker推荐】搭建umami——统计网站数据(自定义统计脚本)