轻量级 PHP 应用,用于监测多个 URL 的 HTTP 状态,提供可视化仪表盘和后台管理。
- 并行检测多个 URL 的 HTTP 状态码和响应时间
- 可视化仪表盘,支持表格排序
- 后台管理(密码保护):增删改查监测目标、设置超时时间
- 自动刷新机制:访问前端页面时自动检查并触发更新(无需系统 cron)
- 手动刷新按钮
- 数据存储使用 JSON 文件,无需数据库
- 商务风格界面,浅色背景,卡片式布局
- PHP >= 7.4
- PHP cURL 扩展(通常默认启用)
- 文件写入权限(data.json 所在目录)
- 将所有文件上传至您的网站目录
- 确保
data.json所在目录有写入权限(首次运行会自动创建) - 访问
index.php查看监控面板 - 访问
admin.php进入管理后台
- 密码:
admin123 - 可在
config.php中修改$admin_password变量
- 检测超时时间:每个 URL 的请求超时秒数
- 自动刷新间隔:两次自动检测之间的最小间隔(秒),设为 0 可禁用
- 启用自动刷新:开启后,用户访问前端页面时若超过间隔则自动触发检测
无需系统计划任务。当用户访问 index.php 时,后端会检查上次检测时间是否超过设定间隔,若是则自动执行检测。这适合低流量场景,可有效减少服务器负载。
如需定期触发检测,可设置系统计划任务访问:http://your-domain.com/api.php?action=refresh 该端点无需认证,执行后返回 JSON 结果。
/ ├── index.php # 前端仪表盘 ├── admin.php # 后台管理(密码保护) ├── api.php # 内部 API(获取数据、执行检测) ├── config.php # 配置文件(密码、数据路径) ├── style.css # 样式表 ├── script.js # 前端 JavaScript ├── data.json # 数据文件(自动生成) └── README.md # 本文件
- 添加监测目标:登录后台 → 填写 URL 和描述 → 添加
- 手动检测:在前端页面点击「立即刷新」按钮
- 查看状态:绿色表示正常(HTTP 2xx/3xx),红色表示异常
- 排序:点击表格表头可按状态、响应时间等排序
data.json 包含两部分:
settings:系统设置(超时、自动刷新间隔等)urls:监测目标列表及最近一次检测结果
- 若检测始终失败,检查 PHP cURL 扩展是否启用
- 确保
data.json文件可写(权限 755 或 666) - 部分网站可能屏蔽 HEAD 请求,可修改
api.php中的 CURLOPT_NOBODY 为 false
- 建议修改默认管理员密码
- 生产环境可配置 Web 服务器限制
admin.php的访问 IP api.php?action=refresh无需认证,请注意不要公开暴露给恶意用户(通常影响不大)
MIT
部署说明
将以上所有文件保存到同一目录下,确保目录可写,访问 index.php 即可开始使用。默认管理员密码为 admin123,可在 config.php 中修改。系统会自动创建 data.json 数据文件。