AI肝了一周搞了个网站流量统计系统,欢迎各位下载部署提BUG

V geekssl  (UID: 5519) 商家 [复制链接]
帖子链接已复制到剪贴板
帖子已经有人评论啦,不支持删除!

202 4

一套私有化部署的网站统计系统。

主要能力

采集

  • 零依赖原生 JS SDK(v1.4),源码约 19.4 KB,esbuild 混淆后约 8.1 KB
  • 自动采集 PV / 访问路径 / referrer / 屏幕 / 语言 / UA 维度;UTM 五参 + ClickID 首触留存
  • SPA 自动路由上报(监听 pushState / replaceState / popstate),无需逐路由埋点
  • 自动事件:出链点击、常见后缀下载、搜索词(可用 opts.auto=false 关闭,或给链接加 class="wstat-ignore" 排除)
  • sendBeacon 优先的离场上报,回退 fetch / 同步 XHR,降低跳出页丢点
  • 双采集通道:POST /collect.phpPOST /api/collect(后者用于 .php 路径被 CDN / WAF 拦的场景)

分析(后台 6 组菜单 / 25 个页面)

分组

页面

概览

概览看板、全站概览、实时数据

流量分析

分析、来源、广告、访客旅程、漏斗、转化目标、热力图

受众分析

受众、会话、地域

站点质量

性能(Web Vitals)

站点管理

站点、成员

系统

告警、开放 API、指标口径说明、系统设置

另有数据大屏 /screen、移动看板 /m、单页下钻 /page 三个独立入口。

几个点单独说:

  • 实时数据 5 秒轮询在线人数与访客列表,切到后台标签自动暂停轮询
  • 访客旅程 单个访客的完整路径回放(事件时序:浏览 / 点击 / 滚动 / 自定义事件)
  • 漏斗 / 转化目标 多步漏斗自定义排序,转化目标支持页面型(前缀 / 包含 / 精确)与事件型
  • 告警 6 种指标 × 统计窗口 × 4 种比较方式 × 2 种基线(昨日同时段 / 上一等长窗口),有 min_sample 抑制夜间误报、cooldown_min 防刷屏,支持恢复通知与静默时段;推送渠道 7 类:Webhook、飞书、钉钉(支持加签)、企业微信、Server 酱、Bark、邮件
  • 导出 11 类 CSV 数据集,带 UTF-8 BOM,只读成员也能导
  • 开放 API 个人访问令牌(PAT),只读白名单 /open/v1/overview|pages|online

技术栈

层次

选型

后端

原生 PHP,无框架、无 Composer 依赖,自研 Router / Db / Auth

Redis 客户端

纯 PHP RESP 协议实现,不需要 phpredis 扩展

数据库

MySQL 5.7 / 8.0,utf8mb4events 按月 RANGE 分区

管理前端

React 18 + Semi Design + ECharts 5(Vite 构建,产物已内置)

采集 SDK

零依赖原生 JS v1.4

地域解析

ip2region 离线库,IPv4 11 MB / IPv6 36 MB,随包附带

部署布局

包根 = 站点目录,public/ = Web 根,后端与数据全在 Web 根之外

环境要求

  • PHP ≥ 7.4(推荐 8.1 / 8.2),必需扩展只有 pdopdo_mysqljsonmbstring
  • MySQL ≥ 5.7(推荐 8.0)
  • Redis ≥ 3.2 —— 可选
  • Nginx 1.18+ / Apache 2.4+,不需要 Node.js
  • 1 核 1 GB 可跑日均 PV ≤ 1 万;2 核 4 GB 覆盖日均 PV ≤ 50 万
  • exec / system / shell_exec / popen / dl 均不是运行必需,不用为它放开任何危险函数

两种运行形态

形态

链路

依赖

适用

Redis 模式(推荐)

采集 → Redis 队列 → worker 每 100 行批量落库

Redis + 常驻 worker

日均 PV 10 万以上,要毫秒级实时与精细会话

无 Redis 模式

采集同步直写 events / sessions

仅 MySQL

小流量站点、虚拟主机、不想装 Redis

两种模式安装时选择,之后可切换。Redis 挂掉时采集端自动降级直写 MySQL(不丢点),恢复后自动切回。

截图:


具体可以看demo:https://tj.kfw.cc
项目下载地址:https://wstats.kfw.cc/
GitHub:https://github.com/kfwcc/wstats
码桶:https://www.dalao.net/codebucket/5519/wstats.htm

 

不喜勿喷表情

免费智能客服 KFW.CC,免费SSL证书 GeekSSL.com~
已有评论 ( 4 )
提示:您必须 登录 才能查看此内容。
域名市场
   域名载入中...
创建新帖
自助推广购买广告位
确认删除
确定要删除这篇帖子吗?删除后将无法恢复。
删除成功
帖子已成功删除,页面将自动刷新。
删除失败
删除帖子时发生错误,请稍后再试。