本文已于 2024-7-5 重写
前言#
很早之前就想过抛弃谷歌统计,主要是功能太多而且很多对我这个小博客来说用不上,早在今年初就听说过 umami 的自建统计了,只不过那个时候的 v1 版本有点问题一直连接不上数据库导致部署失败所以作罢,最近发现 umami 出了 v2,重新尝试了一下成功了,下面我就把我的过程分享出来
准备#
首先 umami 使用的是 nextjs 框架,所以你可以选择部署在 vercel, 同时需要一个数据库来存储统计数据,支持 mysql 或者 postgresql,我这边使用的是 supabase 托管的 postgresql 数据库,具体的取决你,可以参考一下他们的文档
部署#
-
forkumami 的仓库,之后进入 vercel 导入 umami 的仓库
-
一般 vercel 会自动帮你选择好框架和构建命令等所以这些不用管,然后在环境变量选项新建一个变量,名字叫
DATABASE_URL
, 变量值填写上你的数据库连接的域名,比如说 postgres://postgres:[YOUR-PASSWORD]@host:6543/postgres
对于 supabase 数据库#
如果使用 supabase 托管的数据库需要前往仓库的db/postgresql/schema.prisma
这个路径修改参数,加上directUrl = env("DIRECT_DATABASE_URL")
然后在 vercel 部署那除了添加DATABASE_URL
以外还需要添加一个DIRECT_DATABASE_URL
的环境变量,值为使用连接池的选项Connection Pooling
说人话就是,DATABASE_URL 那填连接端口为 6543 的连接字符串,DIRECT_DATABASE_URL 就是填 5432 端口的连接字符串
使用#
部署成功之后,登录进管理面板,转到设置
新建一个网站,名字随便,域名写你的网站域名
对于 hexo#
然后将他的 js 片段插入到 inject 的 bottom 之中然后 hexo 三连,就可以使用啦~
然后你还可以创建一个共享页面用来当做博客的访客统计界面,本站的访问统计便是使用该功能实现的
对于 mix-space#
已经有人写了,不再赘述:https://blog.nekorua.com/posts/mx-space/118.html
此文由 Mix Space 同步更新至 xLog
原始链接为 https://blog.xiaohan-kaka.me/posts/default/umami