适合谁读:个人博客、独立站、作品集、知识库站点,以及第一次接触网站统计和 Vercel 的新手。
本文目标:从注册账号开始,在 Vercel 上部署自己的 Umami 统计后台;随后绑定自定义域名,将统计代码放进网站,并使用 Halo 的
plugin-article-analysis插件展示文章访问数据。“零成本”:本文说的零成本,是指在免费额度、个人非商业使用、访问量不超过平台限制的前提下,不购买服务器和数据库套餐。Vercel、Neon、域名注册商的免费/付费规则都会变化;截至 2026 年 8 月 26 日,请以你实际账号页面显示的额度和条款为准。自定义域名本身通常需要付费购买,不能把域名费用算作零成本。
一、Umami + Vercel 适合什么场景?
Umami开源地址:https://github.com/umami-software/umami
Umami官方文档地址:https://umami.is/docs/about
整个网站统计系统可以把它理解成三部分:
Umami:网站统计程序,负责采集和展示访问数据。
Vercel:运行 Umami 网页应用,并自动完成构建、部署和 HTTPS。
PostgreSQL 数据库:保存网站、访客、页面浏览和事件等统计数据。本文使用 Neon 的免费 PostgreSQL,并通过 Vercel 集成到项目中。
部署完成后的访问链路大致如下:
访客打开你的网站
↓
Umami 追踪脚本记录匿名访问事件
↓
Vercel 上运行的 Umami 接收数据
↓
Neon PostgreSQL 保存数据
↓
你在 Umami 后台查看报表
1.1 Umami 的主要优点
隐私优先:默认不依赖 Cookie,不以跨站追踪为目的,也不要求把数据交给广告平台。
数据自己掌控:自托管后,统计数据保存在你选择的数据库中。
轻量:追踪脚本体积小,对页面加载的影响较低。
界面简单:比很多大型分析平台更容易看懂,适合个人站长。
支持多站点:一个后台可以管理多个网站。
支持事件统计:可以统计按钮点击、下载、表单提交等行为。
支持 API 和分享:方便二次开发,或给别人一个只读的数据分享链接。
开源可审计:源代码公开,可以自行部署和检查实现方式。
隐私提醒:不使用 Cookie 不等于在所有国家和地区自动完成合规。你仍然需要根据所在地区、网站业务、收集的字段和隐私政策要求,决定是否需要告知用户、取得同意或限制某些数据采集。
二、Umami 能统计哪些数据?

2.1 网站常见指标
2.2 页面与内容分析
你可以查看:
哪些页面最受欢迎;
哪些文章带来了更多访问;
访客从哪一个页面进入;
访客最后离开了哪一个页面;
页面 URL、标题、语言等维度;
某一天、某一周或自定义时间范围的趋势。
对博客来说,最实用的做法是:每周打开 Pages/页面 报表,按页面浏览量和访客数排序,看看哪些文章值得继续更新。
2.3 来源、设备与地域
Umami 通常可以按以下维度拆分数据:
Referrers 来源网站:访客从哪个外部链接进入;
搜索和社交来源:哪些搜索引擎或社交平台带来访问;
浏览器:Chrome、Safari、Firefox 等;
操作系统:Windows、macOS、Android、iOS 等;
设备类型:桌面端、手机、平板;
国家/地区:根据请求信息推断的粗粒度地域,不应当当作精确定位。
2.4 自定义事件
页面浏览只能告诉你“页面被打开了”,事件则可以告诉你“访客做了什么”。例如:
点击“下载 PDF”;
点击微信、GitHub 或邮件链接;
播放视频;
提交搜索;
复制文章代码;
点击“购买”“注册”“开始使用”。
一个事件一般包含一个事件名称,必要时还可以带事件数据。例如事件名称可以是 download,事件数据可以是 { file: 'guide.pdf' }。
2.5 UTM 活动参数
如果你要比较不同推广链接,可以给 URL 加上 UTM 参数:
https://example.com/article?utm_source=wechat&utm_medium=social&utm_campaign=summer
常见字段:
utm_source:来源,例如wechat、google;utm_medium:媒介,例如social、email;utm_campaign:活动名称,例如summer。
不要把姓名、手机号、邮箱等个人身份信息直接塞进 URL 参数或事件数据里。
2.6 目标、漏斗、旅程和留存
当你不只想看“有多少人访问”,而是想看“有多少人完成目标”时,可以使用更高级的分析能力:
Goals/目标:例如把“点击注册”定义为目标;
Funnels/漏斗:例如“打开落地页 → 点击价格 → 提交注册”;
Journeys/用户旅程:查看匿名访问在页面之间的大致流转;
Retention/留存:观察用户在首次访问后是否再次回来。
这些功能的菜单和可用范围可能随 Umami 版本变化。建议先把最重要的一个行为定义成目标,不要一开始就创建几十个指标。
三、部署前需要准备什么?
3.1 必需账号
可选项目:自定义域名
你可以先使用 Vercel 分配的 *.vercel.app 域名测试,后续再绑定自定义域名。
如果你的访客主要来自中国大陆,vercel.app 默认域名可能存在访问不稳定的情况。自定义域名能改善品牌展示和链接可读性,但是否能稳定访问,还取决于域名解析、网络环境和站点备案等因素。
四、详细部署步骤:零基础照着做
第 1 步:Fork Umami 官方仓库
打开 Umami 官方 GitHub 仓库:
https://github.com/umami-software/umami 登录 GitHub。
点击右上角 Fork。

在弹窗里确认仓库归属为你的账号。
保持默认仓库名称或改成自己容易识别的名字。
点击 Create fork。

Fork 的意思是:在你自己的 GitHub 账号下复制一份代码。后面 Vercel 部署的是你的副本,这样你可以通过同步上游代码来更新 Umami。
安全建议:不要把数据库连接字符串、密码、
HASH_SALT或 API 密钥写入 GitHub 文件。所有敏感配置都放在 Vercel 的 Environment Variables 中。
第 2 步:用 Vercel 导入 GitHub 仓库
打开 https://vercel.com,使用 GitHub 登录。
进入控制台,点击 Add New → Project。

找到你刚刚 Fork 的 Umami 仓库,点击 Import。

项目名称自己设置,其他全部先使用仓库默认值,点击
Deploy。
构建失败是正常的,因为我们还没有配置数据库,出现如图所示,可以直接返回主页。

第 3 步:在 Vercel 创建 Neon 数据库
打开 Vercel 主页面,点击
Storage,再点击Create Database。
选择
Neon,点击Continue。
注意地区选择新加坡,点击
Continue。
名字自己设置,点击
Create。
创建完成,左上角点击关闭。

点击进入刚才创建的数据库,点击
Conenect to Project。
选择自己的umami项目,点击连接
Connect Project,等待右下角提示连接成功。
第 4 步:重新部署 umami
回到 Vercel 项目的 Deployments 页面,找到最近一次部署。

点击右侧菜单中的
Redeploy,等待部署。

如图,如果状态显示 Ready,则部署成功,点击域名即可访问umami页面。

如果仍然失败,请先看构建日志中最后几十行,重点寻找:
数据库连接失败;
环境变量缺失;
Prisma migration 失败;
Node.js/构建版本不兼容;
Neon 数据库授权未完成。
不要一上来反复点击 Redeploy。先解决日志明确指出的问题,再重新部署。
第 5 步:首次登录并立即修改密码
首次打开 Umami 后,使用当前版本官方文档提供的初始管理员账号登录。历史版本常见默认账号是:
用户名:admin
密码:umami
但默认凭据属于高风险信息,版本或部署方式可能发生变化。如果该账号无法登录,请以当前 Umami 官方文档或首次启动提示为准,不要把默认密码当成固定不变的规则。

登录后立即:
语言修改为简体中文;

进入管理员设置;

修改管理员密码;

设置强密码,并保存到密码管理器;
如果版本支持,开启双因素认证;
不要把后台地址和密码写进公开文章或截图。
第 6 步:添加要统计的网站
在 Umami 后台点击
添加网站。
填写网站名称,例如“我的博客”,填写网站地址,例如
www.example.com,点击保存
进入后台复制 Tracking code/追踪代码
代码通常类似于:
<script
defer
src="https://stats.example.com/script.js"
data-website-id="替换成你的 Website ID">
</script>
第 7 步:把追踪代码放进网站(以Halo博客为例)
把代码放在网站公共布局的 <head> 区域,或者放在所有页面都会加载的页脚模板中。

静态 HTML
<head>
<!-- 其他 head 内容 -->
<script
defer
src="https://stats.example.com/script.js"
data-website-id="你的 Website ID">
</script>
</head>
WordPress、Halo 或其他 CMS
在主题的公共模板、页脚代码、站点自定义脚本设置中粘贴。具体入口取决于主题和系统版本。
单页应用(SPA)
大多数情况下,Umami 脚本可以自动识别页面变化;如果你使用了特殊路由或自定义导航逻辑,建议在真实访问后检查每个路由是否产生页面浏览。
第 8 步:验证是否统计成功
不要只看首页代码是否出现,还要完成一次真实验证:
用浏览器打开你的站点;
关闭会阻止统计脚本的浏览器插件,或使用无痕窗口测试;
访问两三个页面;
在 Umami 后台打开 Realtime;
等待几十秒到几分钟,观察是否出现访问记录;
点击一个页面,再回到 Pages 检查页面浏览量。
如果没有数据,按下面顺序排查:
src是否指向可以打开的 Umami 域名;data-website-id是否复制完整;追踪代码是否真的出现在最终网页源代码中;
浏览器控制台是否报 404、CORS 或网络错误;
广告拦截器是否拦截了
script.js或上报接口;Vercel 部署是否仍为 Ready;
Neon 数据库是否暂停、配额耗尽或授权失效。
六、基础配置:部署成功后建议做什么?
6.1 排除自己的访问
你每天反复打开自己的博客,会把自己的浏览量也算进去。Umami 通常提供排除 IP 的配置项,例如 IGNORE_IP 环境变量或后台过滤能力,具体以当前版本文档为准。
如果使用环境变量:
IGNORE_IP=你的公网IP,另一个IP
注意:家庭宽带、手机网络的公网 IP 可能变化;IPv6、代理和公司网络也可能让这个方法不稳定。它适合减少干扰,不应当被理解为绝对精准的“自己人过滤”。
6.2 关闭匿名遥测或更新检查
如果你希望减少 Umami 自身的匿名使用统计,可以查看当前版本是否支持:
DISABLE_TELEMETRY=1
如果不希望后台检查更新,可以查看是否支持:
DISABLE_UPDATES=1
这些变量名称可能随版本变化。添加后需要重新部署,并确认构建日志没有错误。
6.3 设置数据保留期
长期保存数据会让数据库逐渐变大。建议根据用途设置保留期:
个人博客:保留 12~24 个月;
活动页:活动结束后保留几个月;
需要长期趋势:先导出重要数据,再清理明细。
保留期设置的入口和可选范围取决于 Umami 版本。第一次部署建议先使用默认值,运行一段时间后再调整。
6.4 多个网站放在一个 Umami 中
在后台添加多个 Website 即可统一管理:
个人博客;
文档站;
作品集;
活动落地页。
每个网站都有独立的 Website ID,因此不要把 A 网站的追踪代码复制到 B 网站后忘记更换 ID。
6.5 分享只读报表
如果你要把统计结果发给客户、合作者或编辑,可以使用网站设置中的分享功能(Share URL/共享链接)。分享前请确认:
报表中没有你不想公开的内部信息;
分享链接没有被公开索引;
不再需要时及时关闭或重置分享链接。
6.6 降低广告拦截误伤
部分广告拦截器会拦截名字明显的统计脚本。可以根据当前 Umami 版本支持情况考虑:
设置自定义追踪脚本名称;
设置自定义数据收集接口;
使用自定义域名;
从自己网站域名下通过 Vercel rewrite 代理统计脚本。
不要为了“绕过拦截”而偷偷收集额外个人信息。目标只是让你已经明确启用的站点统计更稳定。
如果要使用 Vercel rewrite,可以在项目根目录添加类似配置:
{
"rewrites": [
{
"source": "/stats/:match*",
"destination": "https://你的-umami-域名/:match*"
}
]
}
具体路径必须根据当前 Umami 追踪脚本和 Vercel rewrite 规则验证。改完后重新部署,再检查 script.js 和数据上报请求是否返回成功。
七、如何绑定自定义域名?
自定义域名的用途有两个:
让 Umami 后台地址更容易记,例如
stats.example.com;让网站追踪脚本不再使用明显的
vercel.app地址。
7.1 在 Vercel 添加域名
打开 Umami 对应的 Vercel 项目;
进入 Settings → Domains;
点击 Add Domain;
输入准备好的域名或子域名,例如:
stats.example.com
Vercel 会告诉你需要添加哪条 DNS 记录。
常见情况是:
子域名:在 DNS 服务商处添加一条
CNAME,主机记录填写stats,记录值填写 Vercel 页面给出的目标值;根域名:可能需要添加
A记录,或按照 Vercel 当前提示配置;使用 Vercel Nameservers:也可以把域名 DNS 托管交给 Vercel,按页面提示修改名称服务器。
不要直接照抄网上旧教程中的固定 IP 或固定 CNAME。Vercel 可能针对不同域名、账户和接入方式显示不同的 DNS 配置,以你的 Domains 页面为准。
7.2 在域名服务商添加 DNS 记录
以子域名 stats.example.com 为例:
保存后回到 Vercel,等待它自动检测。DNS 生效时间可能从几分钟到更久不等,取决于 DNS 服务商缓存。
当 Vercel 显示域名已生效并自动签发 HTTPS 后,用浏览器打开:
https://stats.example.com
如果打不开:
检查主机记录是否把
stats错写成完整域名;检查是否同时存在冲突的 A、AAAA、CNAME 记录;
确认 DNS 服务商没有开启错误的代理模式;
等待 DNS 缓存刷新;
查看 Vercel 域名页面的具体错误提示。
7.3 更新网站追踪代码
绑定成功后,打开 Umami 后台的追踪代码页面,确认 src 已使用新的域名:
<script
defer
src="https://stats.example.com/script.js"
data-website-id="你的 Website ID">
</script>
如果后台仍显示旧域名,也可以手动替换 src,但必须先确认新域名能够正常访问 script.js。
八、Halo 文章分析插件是什么?
该项目是一个 Halo 插件,仓库说明将它定位为“文章访问量统计”类插件,并提供 Umami 等统计服务的配置方式。它的价值不是替代 Umami,而是把 Umami 的数据接入 Halo 的文章页面或管理界面,让你更方便地查看文章级别的访问数据。
需要注意:GitHub 仓库的 README、Release 和配置项可能更新。安装前请以仓库当前页面的 README、Releases、兼容版本说明和权限声明 为准;本文按照仓库公开说明总结使用思路,不把某个时间点的界面截图当作永久不变的操作路径。
8.1 插件与 Umami 的关系
可以这样理解:
Umami 负责采集和保存网站统计数据;
Halo 负责管理文章和页面;
plugin-article-analysis 负责把文章分析数据接到 Halo 的使用场景中。
它们不是“装了 Halo 插件就自动出现数据”。要想让文章分析正确工作,至少要满足:
Umami 已部署并能访问;
要统计的 Halo 站点已经添加到 Umami;
Halo 文章页面加载了 Umami 追踪代码;
插件能访问 Umami 的 API;
API 认证信息和网站/文章标识配置正确;
Umami 中已经产生可查询的数据。
8.2 安装插件
以 Halo 常见的插件安装方式为例:
打开指定 GitHub 仓库的 Releases 页面;
下载与当前 Halo 版本匹配的插件安装包;
进入 Halo 管理后台;
打开 插件/扩展管理;
选择本地安装,上传插件包;
安装完成后启用插件;
在插件设置页面查看 Umami 配置项。
如果仓库没有提供适合你 Halo 版本的 Release 包,或者插件要求从源码构建,请遵循仓库当前 README,不要随意下载陌生的第三方构建文件。
8.3 在 Umami 中准备 API 访问
插件需要从 Umami 查询统计数据。常见做法是使用 Umami 的 API Token 或个人访问令牌,具体名称以插件当前版本和 Umami 当前版本为准。
建议创建一个专门给 Halo 插件使用的令牌,而不是把管理员密码写入插件:
登录 Umami;
打开账户、个人设置或 API Token 页面;
创建新令牌;
给令牌写清楚用途,例如
halo-article-analysis;只赋予满足查询所需的权限;
复制令牌并安全保存。
如果 Umami 当前版本要求先登录获取会话或使用特定 API 认证方式,则按官方 API 文档和插件 README 配置。令牌只在 Halo 后台保存,不要提交到公开 GitHub 仓库。
8.4 在 Halo 插件中填写 Umami 配置
打开 Halo 的文章分析插件设置页,通常需要关注以下几类配置:
不同版本插件的字段名称可能不同。填写时有三个原则:
Umami 地址要用部署成功的地址,例如自定义域名;
Website ID 要来自正确的网站,不能把 Umami 登录账号或项目名当成 ID;
文章匹配规则要和 Umami 实际记录的 URL 保持一致。
保存后,先打开一篇 Halo 文章,再回到 Umami 的 Pages 报表确认页面路径;如果 Umami 记录的路径和插件查询的路径不一致,插件可能显示为 0。
8.5 文章 URL 匹配是最容易出错的地方
举例:Halo 文章最终访问地址是:
https://www.example.com/archives/umami-deploy
Umami 可能记录的页面路径是:
/archives/umami-deploy
有些插件则可能根据完整 URL、文章别名、文章 ID 或页面标题来查询。常见不匹配原因包括:
一个使用
http,另一个使用https;一个使用
www.example.com,另一个使用根域名;URL 末尾一个有
/,另一个没有;站点部署在反向代理后,Umami 记录了代理路径;
Halo 文章改过别名,但插件仍查询旧路径;
页面使用了语言前缀,例如
/zh/archives/...;SPA 路由变化没有正确触发页面浏览。
排查时请在浏览器地址栏复制真实文章地址,再对照 Umami 报表中实际显示的路径,最后按照插件 README 规定的匹配方式配置。
8.6 如何判断 Halo 插件已经接入成功?
可以做一次最小闭环测试:
在 Umami 中确认 Website ID;
在 Halo 插件中填入 Umami 地址、令牌和 Website ID;
打开一篇公开文章;
等待 Umami 出现这次访问;
在插件页面刷新;
查看文章浏览量或趋势数据是否出现;
换另一篇文章验证路径匹配不是偶然正确。
如果 Umami 有数据但插件没有数据,问题通常在 API 权限、Website ID、时间范围或 URL 匹配;如果 Umami 本身没有数据,应先修复追踪脚本,而不是先修改插件。
九、日常使用:一套适合新手的统计习惯
9.1 每周看 4 个问题
不用每天沉迷报表,每周固定看下面四项就够了:
哪些文章访问最多?:决定下一批内容选题;
访客从哪里来?:判断搜索、社交或外链哪个渠道有效;
哪些页面只有访问没有后续动作?:优化标题、目录、内链和 CTA;
移动端体验是否明显更差?:按设备拆分后检查页面速度和布局。
9.2 给重要按钮加事件
假设你希望统计下载按钮,可以使用 Umami 当前版本支持的事件写法。常见 HTML 写法类似:
<button
data-umami-event="download-guide"
data-umami-event-file="umami-guide.pdf">
下载指南
</button>
也可以使用 JavaScript API:
<script>
umami.track('download-guide', {
file: 'umami-guide.pdf'
});
</script>
不同 Umami 版本的事件属性或 API 细节可能变化,请以当前官方文档为准。测试时要在 Umami 的 Events/事件报表中确认事件名称和属性是否出现。
9.3 用 UTM 比较推广效果
不要只在文章里写“欢迎从公众号访问”。为不同渠道生成不同链接:
https://www.example.com/guide?utm_source=wechat&utm_medium=social&utm_campaign=umami-guide
https://www.example.com/guide?utm_source=email&utm_medium=newsletter&utm_campaign=umami-guide
这样可以比较微信、邮件、搜索或其他渠道的访问质量。参数名称要保持统一,不要今天写 WeChat、明天写 wechat,否则后台会拆成两个来源。
9.4 保护统计数据
使用强管理员密码;
定期更新 Umami 版本;
不把 API Token 写入前端代码;
不把数据库连接字符串提交到 GitHub;
限制 Halo 插件令牌权限;
为数据库和重要配置保留备份;
定期检查 Vercel、Neon 的用量和账单页面。
十、常见问题与排错
Q1:Vercel 部署失败,是不是 Umami 不能部署?
通常不是。最常见原因是数据库连接变量没有注入、变量名称不符合当前 Umami 版本要求、数据库授权未完成,或构建时使用了错误的环境变量范围。
先打开 Deployment 的 Build Logs,找到第一条真正的错误,再检查:
数据库 URL 是否存在;
URL 是否包含完整的协议和认证信息;
Neon 项目是否可用;
Vercel 是否在 Production 环境注入变量;
代码版本和官方部署说明是否对应。
Q2:登录页能打开,但登录不了
可能是初始账号已被修改、默认凭据随版本变化,或者数据库初始化没有完整完成。请查看当前 Umami 官方文档和部署日志。不要在公开评论区贴出管理员密码或数据库 URL。
Q3:后台没有访问数据
优先检查追踪代码,而不是数据库:
页面源代码里有没有脚本;
src是否指向当前 Umami 域名;data-website-id是否正确;浏览器 Network 面板中脚本和上报请求是否成功;
是否被广告拦截器阻止;
是否刚好使用了错误的域名、协议或缓存版本。
Q4:Umami 有数据,Halo 插件显示 0
这说明采集链路大概率正常,重点检查 Halo 插件:
Umami 地址是否带
https://;API Token 是否过期、复制不完整或权限不足;
Website ID 是否对应 Halo 站点;
插件选择的日期范围是否覆盖这次访问;
文章 URL 路径是否完全匹配;
文章是否被缓存成了旧链接。
Q5:绑定域名后脚本失效
先直接访问:
https://stats.example.com/script.js
如果返回 404,说明自定义域名未正确指向 Umami 项目,或脚本路径与当前版本不一致。如果脚本能打开,再检查网站追踪代码中的 Website ID 和浏览器网络请求。
Q6:Neon 免费数据库会不会丢数据?
免费数据库通常会有计算、存储、闲置暂停或用量限制。闲置暂停可能导致第一次请求较慢;达到额度后,服务行为取决于供应商当前政策。重要数据不要只依赖免费服务,建议定期导出或备份。
Q7:能不能把 Umami 和 Halo 放在同一个域名?
可以尝试用不同子域名,例如:
www.example.com # 博客
stats.example.com # Umami 后台
也可以用反向代理把统计脚本映射到主站路径,但这会增加 rewrite、缓存、跨域和升级排错成本。第一次部署建议先使用独立的 stats 子域名,确认运行稳定后再做代理优化。
Q8:Vercel 真的永远免费吗?
不能这样理解。Vercel Hobby 计划、Neon 免费额度和第三方集成政策都可能调整;此外,商业用途、团队协作、超出用量、额外日志或数据库服务可能触发限制或费用。部署后请定期查看当前价格、用量和账单页面。
十一、更新与维护建议
11.1 更新 Umami
如果你使用的是 GitHub Fork:
在 GitHub 打开你的 Fork 仓库;
使用 Sync fork 或同步上游分支;
先阅读 Umami 当前版本的升级说明;
确认数据库迁移和环境变量是否有变化;
再让 Vercel 触发部署;
部署完成后检查登录、网站列表、Realtime 和历史数据。
重大版本升级前,建议先复制一个 Preview 环境测试。不要为了追新版本直接在生产环境反复试错。
11.2 监控免费额度
至少关注:
Vercel Function 调用量、构建次数和带宽;
Neon 存储空间、计算时间、数据库状态;
Umami 网站数量、事件数量和数据保留量;
自定义域名证书状态;
Halo 插件 API 请求是否频繁失败。
11.3 做一次数据备份演练
“以后再备份”通常等于“没有备份”。至少确认:
能否从 Neon 导出数据库;
是否保存了 Vercel 环境变量名称和值的安全副本;
是否保存了 Umami Website ID;
是否知道如何重新绑定域名;
Halo 插件令牌失效后能否重新生成。
不要把数据库密码和 API Token 放在公开笔记、仓库 README、截图或聊天群里。
十二、总结
对于个人博客和小型网站,Umami + Vercel + Neon 是一套相对轻量的自托管统计方案:
不用购买服务器;
不需要安装复杂运行环境;
统计数据由你选择的数据库保存;
Umami 界面简洁,适合零基础用户;
可以从页面浏览逐步扩展到事件、UTM、目标和漏斗;
可以通过自定义域名改善访问和品牌体验;
可以借助 Halo 的
plugin-article-analysis插件,把文章统计融入日常内容管理。
最推荐的新手路线是:先用 Vercel 默认域名完成部署 → 确认 Realtime 有数据 → 再绑定 stats.你的域名 → 最后配置 Halo 插件。每一步都先验证再继续,遇到问题时根据链路定位,不要同时修改五六项配置。
只要完成一次完整闭环,你就不再只是“猜哪些文章受欢迎”,而是可以用真实数据决定下一篇写什么、哪个入口值得优化,以及哪些推广渠道真正带来了读者。
相关资料
Umami 官方项目:https://github.com/umami-software/umami
Umami 官方文档:https://umami.is/docs
Umami Vercel 部署说明:https://umami.is/docs/guides/running-on-vercel
Vercel 项目域名文档:https://vercel.com/docs/domains/working-with-domains
Vercel Marketplace:https://vercel.com/marketplace
Neon 官方文档:https://neon.com/docs
Halo 文章分析插件仓库:https://github.com/shirainbown/plugin-article-analysis
本文资料说明:文章基于参考文件《Umami-Vercel零成本部署指南.md》整理,并结合 Umami、Vercel、Neon 及指定 Halo 插件仓库的公开资料编写。云平台计划、软件版本、菜单名称和插件配置字段可能变化;实际操作时请以对应官方页面和仓库最新说明为准。