早些年用过友盟、51.la、百度统计、Google Analytics,各有各的优缺点,目前国内统计只允许备案网站使用,Google Analytics 访问也不太好,权衡之下使用这款开源的网站统计服务——Umami。
根据官网介绍,Umami 是一款简单、易用、美观、轻量、快速、隐私、安全的开源免费网站统计工具,从部署到使用,都是简单、快速,体验也很满意。
官方文档介绍了多种部署方式,包括使用自己服务器,或者第三方平台,例如 Netlify、Heroku、Railway 等等,有些第三方平台一般都不提供数据库服务,本文将使用 Vercel 部署应用,Supabse、Heroku 两种方式提供数据库服务。
在使用前,先注册并登录好 GitHub、Vercel、Supabase或者Heroku 三个平台,并在 GitHub 平台 Fork Umami 的项目仓库。
GitHub:https://github.com/umami-software/umami Vercel:https://vercel.com/ Supabase:https://supabase.com/ Heroku:https://www.heroku.com/
首先注册一个 Heroku 账号,登录成功后,点击右上角按钮创建一个新的应用。
输入实例名称,地区可以自行选择,点击创建。
创建完成后,在 Resources Tab 的 Adds-on 中搜索选择 Postgres 数据库。
选择 Free Plan 即可,Heroku 中的 Postgres 数据库是免费的,可以持续使用,免去了搭建维护成本。 (如果没有免费数据库资格的可以选择下方的 Supabase 数据库或者付费服务)
创建完成后,在 Setting 中查看 DATABASE_URL,后面部署要用到。
点击新增的 Postgres add-on 跳转进行设置。
进入后,选择 Setting 页面的 View Credentials,并且记录配置参数。
在官网选择 Free 方案,进入 Create a new project 页面,按要求填写相关内容。Name 填写任意项目名,Database Password 可以使用下方工具 Generate a password 生成,并保存到记事本备用。
等待数据库建立,需要几分钟的时间。
建立之后,点击左下方的 Project Settings,选择 Database,找到 Connection string 中的 URL 一栏,复制内容,并将 [YOUR-PASSWORD] 替换为上一步生成的密码,稍后会用到。
Supabase 平台的操作就结束了。
登录 Vercel 之后,点击右上角 Add New Project,并导入事先 Fork 的项目仓库。
在 Configure Project 中需要设置两个环境变量(Environment Variables)。
分别添加 DATABASE_URL 和 HASH_SALT。
DATABASE_URL 是上一步在 Subabase 复制的 URL,记得替换自己的 Password; HASH_SALT 需要自己随意生成一长串字符串。
最后点击 Deploy,等待两分钟。
由于 Vercel 提供的域名在大陆无法访问,所以如果是想大陆流畅访问,建议绑定一个自己的域名。
1、在自有域名的 DNS 服务中添加一条记录,选择 CNAME 类型转发,记录值填写为:cname.vercel-dns.com
2、然后在 Vercel 中找到 umami 项目,点击 Settings 标签卡,跳转页面后点击左侧的 Domains 菜单项,输入你自己定义的域名点击 Add 按钮即可。
按照上述步骤,Umami 已经部署成功了,点击 Dashboard 或分配的 Vercel 域名访问服务,可以看到 umami 的登录界面。
默认用户名和密码分别是 admin 和 umami ,进入后台可以修改密码、设置语言,完成基础帐号配置后,点击侧边栏网站 Tab,点击添加网站,然后就可以添加网站了。
提示:如果需要删除网站,先将语言切换至 English,中文状态无法删除。
网站创建完成,点击编辑按钮,选择跟踪代码,获取 umami 脚本。
获取后,在个人网站添加 umami 脚本即可,配置完成部署,即可开始追踪网站数据。
使用官方的脚本名称,可能会被一些过滤规则拦截,因此我们可以自定义脚本名称,实现更准确地网站数据追踪。
官方也提供了便捷的修改方式,可以在 Vercel 中已经部署的 umami 服务中增加 TRACKER_SCRIPT_NAME 环境变量,配置为自定义名称。
配置完成后重新部署,再在个人网站脚本中更改脚本名称即可。
从零开始搭建一个免费的个人博客数据统计系统(umami + Vercel + Heroku) - 少数派 https://sspai.com/post/73346 使用 Vercel + Supabase 部署 Umami来实时统计网站数据 https://www.baichuanweb.cn/article/example-50 搭建 umami 收集个人网站统计数据 | Reorx’s Forge https://reorx.com/blog/deploy-umami-for-personal-website/ 使用自定义域名激活Vercel部署的Waline服务 https://lisenhui.cn/blog/use-custom-domain-active-vercel-waline.html