按 Enter 键跳转到正文

自建网站分析工具:Umami 完全指南

在网站上线后,了解访客从何而来、关注哪些内容,是持续优化的基础。 但 Google Analytics 的复杂配置和隐私合规问题,让不少站长望而却步。如果你希望数据完全由自己掌控,又不想牺牲分析能力,Umami 是一个非常值得考虑的选择。

一、什么是 Umami?

Umami 是一个开源、轻量且注重隐私的网站分析工具,定位为 Google Analytics 的替代方案。它的核心特点可以用几个关键词概括:

  • 开源免费,自托管:代码遵循 MIT 许可证,任何人都可以自由使用和修改。你可以将其部署在自己的服务器或云平台上,所有数据都存储在你控制的环境中,无需依赖任何第三方服务。
  • 隐私友好,无需 Cookie:Umami 默认不使用 Cookie,也不收集个人身份信息(PII),符合 GDPR、CCPA 等隐私法规要求。这意味着你不用再为 Cookie 同意弹窗而烦恼。
  • 轻量高效,不影响性能:前端跟踪脚本体积极小,通常小于 2KB,对网站加载速度的影响几乎可以忽略不计。
  • 界面简洁,功能实用:仪表盘清晰展示实时访客数、页面浏览量(PV)、独立访客(UV)、流量来源、设备类型、热门页面等核心指标。

简单来说,Umami 回归了网站分析的本质——了解你的访客,而不打扰他们

二、 Umami 的优势

相比于其他统计工具,Umami 的优势非常突出:

特点具体说明
数据所有权自托管部署,所有数据归你所有,不存在数据被第三方利用的风险。
不限网站数量一个 Umami 实例可以同时监控无限个网站,甚至子域名和单个 URL。
绕过广告拦截器因为统计脚本运行在你自己的域名下,可以有效避免被广告拦截器屏蔽。
多账户与共享可以为团队或客户创建独立账号,也可以通过唯一 URL 公开分享统计数据。
持续进化最新版本(v3.1.0)已加入会话回放(Session Replay)自定义看板(Boards)Core Web Vitals 性能监控等专业功能。

三、安装 Umami

对于大多数用户,使用 Docker Compose 是最快捷、最可靠的部署方式。它会帮你把 Umami 应用和 PostgreSQL 数据库一起搞定,维护起来也方便。

此处以Docker为例安装

3.1 前提

  • A server with Node.js version 18.18+.
  • A PostgreSQL database version v12.14+.

3.2 拉取项目源码或者手动创建docker-compose.yml

 1---
 2services:
 3  umami:
 4    image: ghcr.io/umami-software/umami:latest
 5    ports:
 6      - "3000:3000"
 7    environment:
 8      DATABASE_URL: postgresql://umami:umami@db:5432/umami
 9      APP_SECRET: replace-me-with-a-random-string
10      # Required for two-factor authentication, generate with: openssl rand -hex 32
11      TWO_FACTOR_ENCRYPTION_KEY: replace-me-with-a-64-character-hex-string
12    depends_on:
13      db:
14        condition: service_healthy
15    init: true
16    restart: always
17    healthcheck:
18      test: ["CMD-SHELL", "curl http://localhost:3000/api/heartbeat"]
19      interval: 5s
20      timeout: 5s
21      retries: 5
22  db:
23    image: postgres:15-alpine
24    environment:
25      POSTGRES_DB: umami
26      POSTGRES_USER: umami
27      POSTGRES_PASSWORD: umami
28    volumes:
29      - umami-db-data:/var/lib/postgresql/data
30    restart: always
31    healthcheck:
32      test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
33      interval: 5s
34      timeout: 5s
35      retries: 5
36volumes:
37  umami-db-data:

3.3 启动服务

1docker compose up -d

3.4 验证部署

在浏览器中访问 http://你的服务器IP:3000,如果看到 Umami 的登录页面,就说明部署成功了。默认的登录账号是 admin,密码是 umami

四、配置与使用

4.1 基本设置

登录后建议立即做两件事:

  • 修改默认密码:在「设置」-「个人资料」中修改。
  • 切换语言:点击界面右上角的地球图标,将语言切换为「中文」,方便操作。

4.2 添加网站

  • 在「设置」-「网站」中,点击「添加网站」。
  • 输入你网站的名称(任意)和域名(需是实际的网站域名,不能是 IP 或带端口)。

4.3 获取并安装跟踪代码

  • 在网站列表中找到刚添加的站点,点击「编辑」,切换到「跟踪代码」标签页。
  • 复制那段 <script> 代码。
  • 将这段代码粘贴到站点的 head.htmlfooter.html 文件中。之后重新部署,数据就会开始收集。

4.4 查看数据

代码生效后,当有访客访问你的网站,Umami 仪表盘上就会开始显示实时访客、浏览量、来源、设备等统计信息。

五、其他

  • 从 v3.0 版本开始,Umami 仅支持 PostgreSQL,不再支持 MySQL。
  • 如果需要更新到最新版本,在项目目录下执行 docker compose pull 和 docker compose up –force-recreate -d 即可

发表评论