全新重构,更现代,更炫酷,更多功能 - 域名监控面板
由于旧版在 UI 界面上不够现代,且很多功能并不完善,因此萌生了重构项目代码的念头,历经近一周的打磨和测试,新版全新出炉,先看靓照:
了解 Domain-check
domain-check 是基于 Cloudflare Worker 和 Worker KV 构建的域名到期监控仪表盘,支持自动 WHOIS 查询、分组管理、到期提醒、数据导入导出等功能
功能特性
- ✅ 域名管理:支持一级和二级域名的添加、编辑、删除
- 🔍 WHOIS 自动查询:一级域名自动获取注册和到期信息
- 📊 可视化仪表盘:域名状态概览、进度条、分组展示
- 🔐 密码保护:简单的访问控制机制
- 💾 KV 存储:使用 Cloudflare Workers KV 持久化数据
- 💾 数据备份:支持数据的导出和导入
- 📱 Telegram 通知:定时检查并推送即将到期提醒
- 🎨 响应式设计:支持移动端和桌面端访问
部署平台:Cloudflare Workers
放弃在 CF 网页管理后台直接链接仓库部署的方式 这种方式对于 kv 空间绑定和定时触发器的设置完全依赖于 wrangler.toml 如果 wrangler.toml 没有进行这些配置,则项目在重新部署后会丢失这些参数,导致 kv 空间绑定丢失以及定时器丢失 这是 CF worker 链接仓库部署一直以来的 bug 因此,项目部署方式改为 github action,以确保相关参数配置持久化 或者你也可以手动通过上传代码的方式部署到 CF worker
前置条件
- 先给本项目点个⭐,再 Fork,点击直达
- 在 Cloudflare 创建一个 KV 空间,名称随意,例如:
DOMAIN_KV - 创建完 KV 后,KV 名称右侧有一串字符,就是 KV 的 ID 值,保存下来备用
设置仓库 action
- 点开仓库
settings→Secrets and variables→Actions - 设置如下
secrets:- CF_API_TOKEN: 必须,需要 worker 和 kv 权限
- CF_KV_ID: 必须,创建 KV 得到的 ID 值
- PASSWORD: 必须,访问项目前端网页的密码,默认为
123123 - TGID: 可选,tg 机器人 ID,用于发送 tg 通知
- TGTOKEN: 可选,tg 聊天 ID 或频道 ID,用于发送 tg 通知
- 转到
variables选项卡,设置以下变量:- CF_ACCOUNT_ID: 必须,CF 的账户 ID
- CF_CRONS: 可选,用于定时检查域名到期情况以发送 tg 通知
运行 action
- 点击仓库
actions→all workflows→自动部署到 CF worker - 点击
run workflow - 等待 action 运行,查看运行日志,点击输出的
worker 管理后台链接
设置 CF worker
- 进入 CF worker 管理后台,给项目绑定一个自定义域名
- 在 worker 的环境变量中,还可设置以下可选变量
| 变量名 | 说明 | 默认值 / 示例值 | 必填 |
|---|---|---|---|
DAYS |
到期提醒天数 | 30 |
❌ |
SITENAME |
网站名称 | 域名到期监控 |
❌ |
ICON |
网站图标 | https://example.com/icon.png |
❌ |
BGIMG |
背景图片 | https://example.com/bg.png |
❌ |
GITHUB_URL |
GitHub 链接 | https://github.com/yutian81 |
❌ |
BLOG_URL |
博客链接 | https://blog.notett.com |
❌ |
BLOG_NAME |
博客名称 | QingYun Blog |
❌ |
本项目 API 接口
https://github.com/yutian81/domain-check/blob/main/API.md
数据导出与导入
前端面板右上角 导出 与 导入 按钮可实现
如果域名数量较多,可在本地编辑 json 文件后通过网页直接导入
域名数据 json 格式示例:
一级域名的注册时间、到期时间、注册商、注册商地址这四个字段可以留空;但二级域名必须填写这四个信息
[
{
"domain": "334555.xyz",
"registerAccount": "334555@hotmail.com",
"groups": "付费域名, 高性价比",
"registrationDate": "",
"expirationDate": "",
"system": "",
"systemURL": ""
},
{
"domain": "abc.pp.ua",
"registerAccount": "abc@hotmail.com",
"groups": "付费域名, 按年续期",
"registrationDate": "2024-07-16",
"expirationDate": "2034-07-17",
"system": "NIC.UA",
"systemURL": "https://nic.ua/en/my"
}
]
