访问统计分析
详情介绍
一、插件简介
访问统计插件自动记录站点访问量(PV/UV),并在后台首页仪表盘展示流量趋势图、本周注册与活跃用户数据。配置保存在插件 config,无独立后台菜单页。
| 入口 | 路径 |
|---|---|
| 前台 | 无独立页面(中间件自动采集) |
| 后台 | 系统首页仪表盘图表(安装后自动集成) |
| 配置 | 应用中心 → 访问统计 → 配置 |
二、核心能力
| 能力 | 说明 |
|---|---|
| PV/UV 采集 | 按日汇总页面浏览量与独立访客 |
| 访问日志 | stat_visit_log 记录访客标识、路径、IP、登录用户 ID |
| 后台首页图表 | 网站流量折线图(可配天数 7–30) |
| 注册统计 | 本周每日新注册用户数 |
| 活跃用户 | 本周每日活跃,口径可配 UV 或登录用户 |
| 今日概览 | 今日 PV/UV/活跃、用户总数、今日新增 |
| 后台访问可选 | 可配置是否统计 /admin 路径 |
| 中间件采集 | StatRecorder 中间件自动调用 record() |
三、依赖与安装
- 无硬依赖其他插件;采集对所有前台/后台请求生效(可配置排除后台)。
- 安装执行
install.sql,创建stat_visit、stat_visit_log表。 - 安装时预写入近 14 天空记录,便于图表展示。
- 卸载删除统计表及全部历史数据。
四、应用中心基础配置
字段来自 StatPlugin::configSchema():
| 配置项 | 类型 | 说明 |
|---|---|---|
启用统计采集 enabled | 开关 | 关闭后不再记录 PV/UV,首页图表仍可看历史 |
统计后台访问 record_admin | 开关 | 关闭后仅统计前台,不含 /admin |
流量图天数 traffic_days | 数字 | 首页流量图展示最近天数,范围 7–30,默认 12 |
活跃用户口径 active_source | 下拉 | uv 独立访客 / user 当日有登录态的注册用户 |
五、后台/重点配置
无独立配置页,均在应用中心完成。
仪表盘数据说明(StatPlugin::dashboard())
| 指标 | 说明 |
|---|---|
| today_pv / today_uv | 今日浏览量与独立访客 |
| today_active | 今日活跃(按 active_source 口径) |
| user_total / user_today | 注册用户总数与今日新增 |
| week_users | 本周每日注册数 |
| week_active | 本周每日活跃数 |
| traffic_pv / traffic_uv | 近 N 天流量趋势 |
六、前台用户流程
用户无感知。每次访问站点(除静态资源等排除路径)时,app\middleware\StatRecorder 调用 StatPlugin::record():
- 检查
enabled开关 - 排除
static、storage、favicon.ico等路径 - 排除应用中心 POST 安装请求
- 按配置决定是否统计 admin 路径
- 写入当日 PV;新访客写入 log 并 UV+1
- 若匿名访客后续登录,回填
user_id
七、后台审核与运维
无审核流程。运维建议:
- 定期关注流量异常尖刺(爬虫、攻击)
- 关闭
record_admin使 UV 更反映真实用户前台行为 - 活跃用户若选「登录用户」,需用户前台登录才有统计意义
- 大流量站点注意
stat_visit_log表体积,可按需归档
八、特殊说明
中间件
app\middleware\StatRecorder 在请求结束时调用插件 record() 方法。
访客标识
md5(IP + User-Agent) 前 32 位,同日相同标识计为同一 UV。
排除规则
- 空 pathinfo
static、storage、favicon.ico开头apps/下的 POST(应用中心安装)
表结构迁移
ensureSchema() 为已安装站点补齐 stat_visit_log.user_id 字段。
无 routes.php
纯后台/中间件插件,无前台路由。
九、推荐上线清单
- 安装 stat 插件并开启采集
- 决定「统计后台访问」策略
- 设置流量图天数与活跃用户口径
- 访问前台若干页面后,检查后台首页图表是否有数据
- 对比第三方统计(如百度统计)验证合理性
- 大站点规划日志表清理策略
十、常见问题
Q:首页图表全是 0? 确认 enabled 开启;访问前台页面触发采集;新安装需等待当日有访问后才有数据。
Q:UV 与百度统计差很多? 本插件按 Cookie-less 的 IP+UA 标识 UV,与第三方 JS 统计口径不同,属正常现象。
Q:关闭采集后图表消失? 历史数据仍在,图表应可查看;若仍为空,检查表是否被卸载。
Q:活跃用户为 0? 若口径为「登录用户」,需用户登录后访问才会计入;游客不计入。
Q:后台访问算不算流量? 由 record_admin 控制,默认统计;运营分析建议关闭此项。
更新记录 (1)
-
v1.0.1
2026-08-24
首次发布