51工具盒子

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

网站统计工具 Umami 安装部署教程

我们在建立网站之后,网站安装网站统计工具还蛮重要的,本文记录 Umami 网站统计工具的安装使用。

简介 {#简介}

优点 {#优点}

  1. 简单分析 Umami 只测量你关心的重要指标:网页浏览量、使用的设备以及访问者的来源。这些数据都在一个易于浏览的页面上展示。

  2. 不限网站数量 Umami 通过一次安装就可以跟踪无限数量的网站,甚至还可以跟踪子域名和单个的 URL。

  3. 绕过广告拦截器 Umami 由你在自己进行托管部署,所以你可以有效地避免 Google Analytics 不同的广告拦截器。

  4. 轻量级 追踪脚本很小(只有 2KB),而且支持 IE 等旧版浏览器。

  5. 多账户 Umami 可用于为朋友或客户托管数据,只需创建一个单独的账号,他们就可以开始在自己的仪表板上跟踪自己的网站。

  6. 共享数据 如果你想公开分享你的统计数据,那么你可以使用一个唯一生成的 URL 进行共享。

  7. 移动端友好 Umami 界面已针对移动设备进行了优化,因此你可以从任何地方查看你的统计数据。

  8. 数据所有权 由于 Umami 是自托管的,因此你拥有所有数据。无需将你的数据交给第三方进行利用。

  9. 注重隐私 Umami 不收集任何个人身份信息,并对收集的所有数据进行匿名处理。

  10. 开源 Umami 是开源的,并采用 MIT 的开源协议。

安装 {#安装}

需求 {#需求}

  • Node.js10.13或更高版本
  • 数据库(MySQL或Postgresql)

从源码构建 {#从源码构建}

安装Nodejsnpm {#安装Nodejs、npm}
下载 Umami {#下载-Umami}
创建数据库 {#创建数据库}

先创建一个空数据库,比如umami,然后在umami目录中输入:

username一般是rootdatabasename就是你创建的空数据库的名字,具体例子是:

你也可以在 phpmyadmin 中手动导入到空数据库中。

创建配置文件 {#创建配置文件}

umami目录中新建一个.env的配置文件,填入:

其中,connection url需要填入:

any random string填入的是随机字符串,完整的例子是:

注意去掉括号

连接 url 格式如下:

编译 {#编译}
启动程序 {#启动程序}

通常使用npm start就可以直接启动,但是退出ssh之后就直接停止运行了,所以需要用一些工具保证后台运行,官方文档中的推荐是:

这样就可以用了。

Nginx 反代 {#Nginx-反代}

因为可以使用ip:3000直接访问,但是有使用域名的话还可以反代一下,这里以Nginx举例。在server段加入配置:

更新 Umami {#更新-Umami}

首先停止运行

获取更新

可能会遇到获取更新失败。我也不知道为啥我这每次都失败,可以用这个命令git reset --hard,然后再执行上一步git pull
然后重新编译

重新启动

页尾版本号有发生变化,那就是更新成功了。

使用 Docker {#使用-Docker}

更简单的方式是使用 Docker 一键启动,在源码根目录下面有 docker-compose 的配置,默认配置构建 umami 容器并启动 Postgres 数据库

安装 docker-compose {#安装-docker-compose}

可能 docker-compose 版本不够高,此时需要到 github 下载最新的 docker-compose 二进制文件用来调用

配置 docker-compose.yml {#配置-docker-compose-yml}
  • 生成随机字符串
  • 将得到的字符串填入 docker-compose.yml 配置文件的 HASH_SALT 中,替换 placeholder
  • 如果不需要公开访问可以修改 ports 为本地 IP,之后我们将本地监听反向代理出去即可(为了方便调试可以不修改,为了安全还是改一下):
生成容器 {#生成容器}
  • 运行命令
  • 过程中可能报错:

    并提示错误信息:

    这是因为之前用其他版本 umami 执行了 docker-compose 构建过程,导致docker 映射的磁盘存在了不同版本的数据库格式

    解决方案

  • 该命令会自动拉取数据库与 umami 镜像并创建容器自动关联协同工作:

  • 此时访问 IP:3000 应该可以登录 umami 面板了

  • 或用 curl 命令也可以看到 umami 的反馈网页代码

先不急使用 umami 做统计,先完成最后一步配置

Nginx 反向代理 {#Nginx-反向代理}

网上有前辈用宝塔直接反向代理,我的宝塔域名被别的占了,又不敢装新的 Nginx (害怕冲突),稳妥起见使用了docker

  • 此步骤用于那些需要 https 自己又没有配置好 Nginx 的同学,如果 http 满足需求可以跳过这一步

  • 参考 创建 Nginx docker 容器反向代理 https

  • 先在本地创建共享文件夹 /share/ssl

  • 拉取镜像并创建 Nginx 容器,端口自定义 XXXX: 443

  • 创建 SSL 证书 获取 server_private.key, server.crt 文件,放在 /share/ssl 文件夹中

  • 进入 Nginx 容器

  • /etc/nginx/conf.d 文件夹中创建配置文件 test.conf

    server_name 填自己的域名

  • 配置完成后重启 nginx 服务
  • 配置好后可以查看是否配置成功
  • 此时可以使用 https 登录 umami

升级 umami {#升级-umami}
  • Docker 安装 umami 后也可以很方便地升级

  • 进入 umami 目录,拉取最新内容

  • 拉取最新镜像

  • 重新构建容器

此时可以看到 docker 更新成功,但必须终端开启

  • 退出后 docker start umami_db_1docker start umami_umami_1 即可恢复之前的状态
  • 升级注意事项
    • 之前网站的 Uuid、分享链接不变
    • 原有账户的 Token 会更换,需要重新申请
    • 1.39 前后的版本 API 发生了变化但是没有写在文档里,具体改动我会写到 Umami API
    • 1.39 以后的版本支持 Events 统计展示(就是为这个升的级)

配置 umami {#配置-umami}

  • 初始登录账号密码为 admin 和 umami,登录后可以在设置中修改
  • 在设置中点击添加站点,配置名称和域名,想要秀一下的勾选共享链接

如此我们的站点监控端就算顺利完成了,点击该站点监控,可以发现访问人数并不会增加,这是因为我们需要在我们监控的站点中插入反馈信息的代码

  • 点击获取跟踪代码

  • 复制跟踪代码,将这部分代码放到我们需要监控网站的 html 代码中即可监控该站点

  • 此时我们可以看到站点实时统计信息

共享链接 {#共享链接}

共享链接可以将站点统计信息实时共享给匿名用户查看

  • 在配置中点击获取共享 URL,分享该 URL 即可分享给别人查看

效果展示 {#效果展示}

参考资料 {#参考资料}



文章链接:
https://www.zywvvd.com/notes/tools/umami/umami/

赞(1)
未经允许不得转载:工具盒子 » 网站统计工具 Umami 安装部署教程