三步快速接入云星统计平台,开始收集您的网站数据
登录后进入仪表盘,在"域名管理"区域点击"添加域名",输入您要统计的网站域名。
https:// 或 www. 前缀。
提交域名后,系统会要求您验证域名所有权。请在您的网站根目录下创建 yxsverify.txt 文件,内容填入系统提供的验证码。
# 在您的网站根目录创建文件:yxsverify.txt # 文件内容为系统提供的 16 位验证码,例如: a1b2c3d4e5f6g7h8
创建完成后,确保可以通过 https://您的域名/yxsverify.txt 或 http://您的域名/yxsverify.txt 在浏览器中直接访问到该文件,然后点击"验证"按钮完成所有权验证。
yxsverify.txt(返回 403)。此时请在网站根目录额外创建 verify_helper.php 文件,系统将自动通过该云函数读取验证文件内容。
<?php /** * 云星统计域名验证辅助文件 * 读取本地的 yxsverify.txt 验证文件并返回内容 * 请将此文件放在网站根目录 */ header('Content-Type: application/json; charset=utf-8'); header('Access-Control-Allow-Origin: *'); // 只接受 POST 请求 if ($_SERVER['REQUEST_METHOD'] !== 'POST') { http_response_code(405); echo json_encode(['success' => false, 'message' => '仅支持 POST 请求']); exit; } // 验证请求参数 $input = json_decode(file_get_contents('php://input'), true); if (!$input) $input = $_POST; if (($input['verify'] ?? '') !== '1') { http_response_code(403); echo json_encode(['success' => false, 'message' => '参数无效']); exit; } // 读取本地验证文件 $filePath = __DIR__ . '/yxsverify.txt'; if (!file_exists($filePath)) { http_response_code(404); echo json_encode(['success' => false, 'message' => '验证文件不存在']); exit; } $content = file_get_contents($filePath); // 去除 BOM 和空白字符 $bom = "\xEF\xBB\xBF"; if (strncmp($content, $bom, 3) === 0) $content = substr($content, 3); $content = trim($content); if (empty($content)) { http_response_code(500); echo json_encode(['success' => false, 'message' => '验证文件内容为空']); exit; } echo json_encode(['success' => true, 'content' => $content]);
备用验证流程: 系统先尝试直接访问 yxsverify.txt,如果失败(如返回 403),会自动调用 verify_helper.php 云函数来获取验证码内容,无需您手动干预。
验证通过后,将以下代码复制到您网站的 <head> 或 <body> 中,将 data-site 的值替换为您的域名。
<script src="https://statistics.kscm.top/sdk.js" data-site="your-domain.com"></script>
SDK 加载后会自动执行以下采集,无需任何手动调用:
| 采集项 | 说明 |
|---|---|
| 页面浏览 (PV) | 自动记录每次页面加载,包含 URL、页面标题、来源页 |
| 停留时长 | 记录用户在页面上的停留时间,页面关闭或切换时上报 |
| 前端错误 | 自动捕获 window.onerror 和未处理的 Promise 拒绝 |
| 用户环境 | 浏览器、操作系统、屏幕分辨率、语言偏好 |
SDK 提供了 window.yxstat.reportBackendError() 方法,供您在网站后端接口调用失败时手动上报错误。
yxstat.reportBackendError(message, code)
| 参数 | 类型 | 说明 |
|---|---|---|
| message | string | 错误描述信息(必填) |
| code | string | 错误代码,如 ERR_001(可选) |
// 在 API 请求失败时调用 fetch('/api/data') .then(res => res.json()) .catch(err => { yxstat.reportBackendError(err.message, 'API_ERR'); }); // 或在服务端返回错误时调用 yxstat.reportBackendError('数据库连接超时', 'DB_TIMEOUT');
SDK 还提供了 yxstat.track() 方法,用于上报自定义事件。
// 上报自定义事件 yxstat.track({ type: 'custom', url: '/checkout', action: 'purchase', value: 'completed', ts: Date.now() });
不会。SDK 体积小巧(约 6KB),所有数据采集都是异步的,不影响页面加载性能。数据上报使用 sendBeacon 在页面空闲时发送。
数据上报后即可在仪表盘查看。页面嵌入 SDK 后,用户访问页面时数据会自动收集并上报。
可以。在仪表盘的"域名管理"区域可以添加、删除多个域名,每个域名的统计数据独立存储。
每个域名最多保留 60 条数据记录,超出时会自动覆盖最旧的数据,确保始终保留最新的统计信息。
data-site 属性值与您在仪表盘添加的域名完全一致,否则数据将无法被接收。