【Agent 学习日记】不想把网站数据交给第三方?用Umami搭建自己的访问分析系统
目录
🎈前言
🎈1.什么是Umami?
🎈2.安装Typecho(个人网站示例)
🎈3.安装Umami
🎈4.简单使用Umami
🎈5.安装cpolar实现随时随地开发
🧣5.1 什么是cpolar?
🧣5.2 部署cpolar
🎈6.为Typecho配置域名
🎈7.配置Umami检测个人网站
🎈8.配置Umami实现随时随地查看网站数据
🎈9.保留固定公网地址
🎈结尾
前言
做网站以后,很快就会遇到一个问题:到底有没有人访问?用户从哪里来,看了哪些页面,什么时候离开,哪些内容更受欢迎。如果这些数据完全看不见,后续优化网站就只能凭感觉。
很多人会直接选择第三方统计平台。它们功能成熟,但也带来新的顾虑:统计脚本是否影响隐私,数据是否完全掌握在自己手里,后台策略变化后是否还能稳定使用。对于个人博客、独立站和小型项目来说,未必需要一套复杂到难以维护的商业分析系统。
Umami提供了一种更轻量的选择。它是开源、自托管、隐私友好的网站分析工具,可以部署在自己的服务器或NAS中,用简洁的仪表盘查看访问量、来源、设备、浏览器、热门页面等关键数据。网站分析回到最核心的目标:了解访问情况,而不是把数据交给黑箱。
为了演示完整流程,本文会先用Typecho作为个人网站示例,再部署Umami作为统计后台。Typecho负责承载网站内容,Umami负责采集和展示访问数据,两者配合后,就能形成“自建网站 + 自建分析”的闭环。
随后还会通过 cpolar 为Typecho和Umami配置公网访问地址。这样不仅能让外部访客正常访问网站,也能让Umami后台在外出时随时打开查看数据。最终目标很明确:网站自己搭,访问数据自己看,分析系统也掌握在自己手里。
1.什么是Umami?
Umami是一个开源、轻量、隐私优先的网站分析工具,旨在为网站所有者提供一种简单、高效且不依赖第三方的访问数据统计解决方案。
核心特点:
开源免费
Umami 的代码完全公开(托管在GitHub上),遵循MIT许可证,任何人都可以自由使用、修改和部署。
自托管(Self-hosted)
你可以将 Umami 部署在自己的服务器或云平台上(如VPS、Docker、Railway、Vercel等),所有数据都存储在你控制的环境中,无需依赖Google Analytics、Plausible等外部服务。
隐私友好
Umami不使用Cookie(默认情况下),不收集个人身份信息(PII),不进行用户行为追踪,符合 GDPR、CCPA 等隐私法规要求,避免法律风险。
界面简洁直观提供清晰的仪表盘,展示关键指标如:
实时访客数
页面浏览量(PV)与独立访客(UV)
流量来源(引荐网站、搜索引擎、直接访问等)
设备类型(桌面/移动)、浏览器、操作系统
热门页面、访问路径等
轻量高效
前端脚本体积小(通常 < 2KB),对网站性能影响极低;后端基于Node.js + PostgreSQL(或SQLite),资源占用少,适合个人博客、小型企业站甚至中型应用。
支持多站点管理
一个Umami实例可同时监控多个网站,并通过不同跟踪ID区分数据。
为什么选择Umami?
不想被Google Analytics的复杂设置和隐私政策困扰?
厌倦了Cookie同意弹窗影响用户体验?
希望真正拥有自己的访问数据,而不是“租用”第三方平台?
那么,Umami就是一个理想的选择——它用极简的设计,回归网站分析的本质:了解你的访客,而不打扰他们。
官网:Umami – Privacy-Focused Web Analytics
GitHub:https://github.com/umami-software/umami
如果你追求自主权、注重隐私、又希望获得专业级的流量洞察,不妨试试Umami——让数据分析,真正为你所控。
2.安装Typecho(个人网站示例)
为什么选择Typecho作为示例?
轻量级、简洁高效,契合Umami的理念
Typecho是一款基于PHP的轻量级博客系统,代码简洁、运行高效。
它不依赖臃肿的插件生态或复杂架构,和Umami的“轻量、隐私优先”理念高度一致。
两者都追求“极简主义”,避免过度工程化,非常适合对性能和隐私敏感的用户。
适合个人开发者或独立博主
Typecho常被用于搭建个人博客、技术笔记、作品集网站等,目标用户与Umami的典型使用者高度重合。
大多数使用Typecho的人更关注内容表达、数据自主权和网站安全,而非商业推广,因此对隐私保护有天然需求。
易于集成,无需复杂配置
Typecho支持在主题中直接插入自定义JavaScript代码(例如通过footer或header钩子)。
添加Umami的跟踪脚本只需在模板文件中添加一行代码,简单直观,不需要插件或数据库修改。
对于非技术人员来说,这种“零配置接入”非常友好。
Typecho支持docker一键部署:
docker run --name=typecho \ --restart always \ --mount type=tmpfs,destination=/tmp \ -v ./typecho:/data \ -e PHP_TZ=Asia/Shanghai \ -e PHP_MAX_EXECUTION_TIME=600 \ -p 90:80 \ -d 80x86/typecho:latest展示“从零开始”的完整流程
使用Typecho作为案例,可以完整展示一个“个人网站 + 自托管分析工具”的闭环:
搭建网站 → 安装Umami → 配置追踪 → 查看数据
让读者更容易理解和复现整个过程,尤其适合新手入门。
强调“自主掌控”的价值观
Typecho本身是开源的,且不强制绑定第三方服务(不像某些CMS强推Google Analytics)。
结合Umami使用,能完美体现“从网站框架到数据分析,全部由我控制”的理念。
这种“端到端的自主性”正是本文的核心主张。
docker部署完成后,在浏览器中输入http://IP:90就能看到typecho的界面:
对typecho感兴趣的小伙伴,可以参考这篇文章:极空间NAS一键部署Typecho:开箱即用的私人博客搭建指南 - cpolar 极点云官网
3.安装Umami
通过Docker部署OneNav:
在开始部署之前,确保你的系统已经安装了 Docker。可以通过以下命令检查 Docker 是否已安装:
docker --version首先创建一下安装的目录并进入到该目录:
mkdir -p /docker/umami chmod -R 777 /umami创建并编辑docker-compose.yml文件:
vi docker-compose.ymlservices: umami: image: ghcr.io/umami-software/umami:postgresql-latest ports: - "3001:3000" environment: DATABASE_URL: postgresql://umami:umami@db:5432/umami DATABASE_TYPE: postgresql APP_SECRET: replace-me-with-a-random-string depends_on: db: condition: service_healthy restart: always healthcheck: test: ["CMD-SHELL", "curl http://localhost:3010/api/heartbeat"] interval: 5s timeout: 5s retries: 5 db: image: postgres:15-alpine environment: POSTGRES_DB: umami POSTGRES_USER: umami POSTGRES_PASSWORD: umami volumes: - umami-db-data:/var/lib/postgresql/data restart: always healthcheck: test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] interval: 5s timeout: 5s retries: 5 volumes: umami-db-data:启动容器:
docker-compose up -d部署完成后,在浏览器中输入http://极空间IP:3001就能看到umami的界面:
4.简单使用Umami
使用账号密码登录,默认账号密码admin/umami:
登录成功:
点击右下角,如图所示,更改语言:
更改为中文:
更改账号密码,如图所示:
点击添加网站:
我们可以看到,需要使用域名:
此时,我们需要给Typecho生成一个域名,此时cpolar就派上用场了!
5.安装cpolar实现随时随地开发
5.1 什么是cpolar?
cpolar是一款安全高效的内网穿透工具,无需公网IP或复杂配置,只需一条命令,即可将本地服务器、Web服务或任意端口映射到公网,让你随时随地远程访问内网应用,特别适合开发调试、远程运维和应急部署等场景。
5.2 部署cpolar
cpolar 可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。
❤️以下是安装cpolar步骤:
使用一键脚本安装命令:
sudo curl https://get.cpolar.sh | sh安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)
sudo systemctl status cpolarCpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:
打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。
6.为Typecho配置域名
登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:
隧道名称:可自定义,本例使用了:ty,注意不要与已有的隧道名称重复
协议:http
本地地址:90
域名类型:随机域名
地区:选择China Top
创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用地址访问。
685cfbef.r2.cpolar.top即为我为typecho生成的域名。
7.配置Umami检测个人网站
接下来我们在Umami添加网站:
填写typecho基础信息:
添加成功:
点进去查看详细信息,发现没有信息:
别急,我们开始配置!
获取Umami跟踪代码:
将代码嵌入Typecho主题,我们去到Typecho页面:
登录Typecho后台 → 控制台 > 外观 > 编辑当前外观
找到主题的footer.php文件(有些主题可能是header.php或base.php)
在 </body> 标签之前插入Umami脚本
建议放在footer.php而不是header.php,避免阻塞页面渲染。
保存文件后,刷新你的博客首页
打开浏览器开发者工具(F12)→ Network面板
查看是否有向umami.is 或你自建域名的请求(如api/collect)
登录Umami后台,应能看到实时访问数据
接下来就可以看到详细的分析:
你是否曾遇到这样的困扰:
自己搭建了开源、隐私友好的网站分析工具Umami,数据安全又干净,却只能在局域网或服务器本地访问?一旦离开办公室或家中网络,就无法实时查看网站流量、访客来源或热门页面?
传统方案往往需要复杂的公网IP配置、域名备案、反向代理甚至云服务器——成本高、门槛高、维护难。但其实,有一种更轻量、更灵活的方式:用cpolar实现内网穿透,让部署在本地或私有服务器上的Umami分析面板,秒变“可公网访问”的远程仪表盘。
cpolar是一款简单高效的内网穿透工具,无需公网IP、无需改动路由器设置,只需一条命令,就能将本地服务安全地暴露到互联网。配合自托管的Umami,你不仅能完全掌控网站数据,还能在手机、平板、咖啡馆电脑上随时打开浏览器,实时监控流量动态。
本文将手把手教你:
在本地或内网服务器部署Umami;
使用cpolar快速生成HTTP公网地址;
安全配置访问权限,防止未授权访问;
最终实现 “我的分析面板,全球任意地点随时看” 的自由体验。
告别固定办公环境,拥抱真正的数据自主权——从今天起,用Umami + cpolar,打造你的移动数据分析中心。
8.配置Umami实现随时随地查看网站数据
登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:
隧道名称:可自定义,本例使用了:umami,注意不要与已有的隧道名称重复
协议:http
本地地址:3001
域名类型:随机域名
地区:选择China Top
创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用地址访问。
访问成功。
9.保留固定公网地址
使用cpolar为其配置二级子域名(cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站),该地址为固定地址,不会随机变化。
点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我使用的是umami,大家可以自定义。填写备注信息,点击保留。
登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑。
修改隧道信息,将保留成功的二级子域名配置到隧道中
域名类型:选择二级子域名
Sub Domain:填写保留成功的二级子域名
地区: China Top
点击更新
更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。
最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。
结尾
完成部署后,Umami就可以作为一套自托管网站分析系统使用。它不需要复杂的第三方统计配置,也不依赖外部平台保存数据,访问量、来源、设备、页面路径等信息都可以在自己的后台中查看。
Typecho在这里提供了一个很合适的接入示例。把Umami生成的跟踪代码加入主题文件后,网站访问行为就能被统计到Umami后台中。后续无论是个人博客、作品集页面,还是小型官网,都可以用类似方式接入。
配置 cpolar 后,这套方案就不再局限在局域网里。Typecho可以获得公网访问地址,Umami分析面板也可以通过固定二级子域名远程打开,方便在手机、办公电脑或外出场景下查看网站数据变化。
需要注意的是,统计后台同样属于敏感入口。即使Umami本身更注重隐私,也不建议把管理地址随意公开;默认账号密码应第一时间修改,固定域名也应妥善保存,避免网站访问数据被无关人员看到。
Umami负责统计和展示数据,Typecho负责承载网站内容,cpolar负责打通公网访问入口。当这几部分组合起来以后,网站分析就不再是对第三方平台的依赖,而会变成一套轻量、可控、适合长期使用的私有数据观察系统。
如果小假的内容对你有帮助,请点赞,评论,收藏。创作不易,大家的支持就是我坚持下去的动力!
