自部署 whois api 实现域名信息的自动化查询

自部署 whois api 实现域名信息的自动化查询
雨天狂奔自部署 whois api 实现域名信息的自动化查询
之前写过一个 域名到期监控 的 CF worker 脚本,域名到期时间需要手动编辑 json 文件,再通过 worker 远程读取和解析,比较麻烦。这次做了升级,对一级域名可以自部署一个 whois api 实现域名信息的自动查询。二级域名就没办法了,只能通过手动编辑 json 文件的方式实现,因为二级域实际上是一级域的子域名,其到期时间是由注册者二次设置的,whois api 无法查询。
一、先部署一个 whois api
✅ 访问 我的仓库,点个 ⭐ 再 FORK 它,以便及时同步更新到我最新的代码
✅ 打开 whois-api.js
文件,复制所有内容,部署到 cf worker,设置以下变量
- API_KEY:自行设置,调用 API 需要用到,
如:123abc
- CACHE_HOURS:缓存时间(单位:小时),默认为 24 小时,
如:24
✅ 给这个 worker 项目绑定一个自定义域名,例如 https://whois.3344.com
,在后面加上 /api/
就是 api 接口地址(末尾必须要带 /),即:
1 | # 末尾必须带 / |
✅ 记录上面的 api 接口地址 和 api key 备用
二、部署新版域名监控
✅ 打开 domain-auto.js
文件,复制所有内容,部署到 cf worker,设置以下变量:
变量名 | 默认值 | 示例说明 | 是否必须 |
---|---|---|---|
DOMAINS | 无 | json 文件直链地址:https://gist.githubusercontent.com/用户名/gistID/raw/domains.json |
是 |
TGID | 无 | TG 机器人 ID:5868334288 |
是 |
TGTOKEN | 无 | TG 机器人 token:9194882369:xxxxxxfwCD8vdtt0jyESsgL2-xxxxxx |
是 |
DAYS | 7 | 到期前几天提醒 | 否 |
API_URL | 无 | 自部署 whois api 接口:https://whois.example.com/api/github.com |
是 |
API_KEY | 无 | 自部署 whois api TOKEN | 是 |
PASSWORD | 123123 | 主页访问密码 | 是 |
SITENAME | 域名到期监控 | 自定义站点名称 | 否 |
ICON | https://pan.811520.xyz/icon/domain.png |
自定义站点LOGO | 否 |
BGIMG | https://pan.811520.xyz/icon/back.webp |
自定义站点背景图 | 否 |
GITHUB_URL | https://github.com/yutian81/domain-check |
页脚自定义github仓库地址 | 否 |
BLOG_URL | https://blog.811520.xyz/post/2025/04/domain-autocheck/ |
页脚自定义博客地址 | 否 |
BLOG_NAME | 青云志 Blog | 页脚自定义博客名称 | 否 |
✅ DOMAINS变量json格式示例
1 | [ |
关于如何获取 gist 直链,看 这篇文章
✅ 给你的域名监控项目绑定自定义域名,假设为 https://domain.3344.com
(注意:是域名监控项目绑定的域名,不是 API 接口绑定的域名),访问该域名,输入设定的密码
,即可在网页上显示设定的域名信息
Whois api 接口简明文档
API 调用方式
- 请求 URL 格式:
1 | https://<worker项目地址>/api/<要查询的域名> |
- 请求头:
X-API-KEY: 你的API密钥
- 请求方法:
GET
- 调用示例
1 | curl -X GET \ |
- 返回示例
1 | { |
API 字段说明
字段 | 类型 | 说明 |
---|---|---|
domain | string | 查询的域名(小写), 无需 http(s) |
creationDate | string/null | 域名创建时间(ISO 格式) |
updatedDate | string/null | 最后更新时间 |
expiryDate | string/null | 域名过期时间 |
registrar | string/null | 注册商名称 |
registrarUrl | string/null | 注册商网址 |
nameServers | array | 域名服务器列表(已去重) |
错误响应
状态码 | 含义 | 示例响应 |
---|---|---|
400 | 请求格 式错误 | {“error”: “ 路径格式应为 /api/<域名>”} |
401 | 未提供 API Key | {“error”: “ 需要提 供有效的 API Key”} |
403 | API Key 无效 | {“error”: “ 无效的 AP I Ke y”} |
500 | 服务器错误 | {“error”: “WHOIS 查询超时 “} |
502 | WHOIS 服务不可用 | {“error”: “ WHOIS 服务返回 502”} |
#API #cloudflare #域名 #监控 #面板
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果