PHP + HTML · 一套完整的域名授权解决方案

为你的产品
加上一道域名授权锁

用户持授权码即可自助绑定域名,支持 PHP 嵌入、独立类、纯前端三种接入方式,HMAC‑SHA256 签名防伪造,本地缓存不影响站点速度。

授权验证通过
// 粘贴到 PHP 文件顶部即可
require 'DomainAuthClient.php';
DomainAuthClient::verifyOrDie();

// 域名 example.com 已授权
// 验证通过,正常加载页面

完整的功能特性

从域名管理到验证日志,覆盖授权全流程

可视化域名管理

后台一键添加/删除授权域名,支持状态切换、有效期设置、备注、关键字搜索与分页。

批量授权码生成

支持单域名/多域名/无限域名三种类型,批量生成授权码,可设置有效期与最大域名数。

验证日志审计

记录每次验证的域名、结果、IP、UA 与失败原因,支持关键字搜索与一键清空。

一键生成接入代码

SDK 生成器自动产出 PHP 嵌入代码、独立类、纯前端 JS 三种接入代码,用户自助绑定域名后复制即用。

本地缓存加速

PHP 文件缓存 + JS localStorage,默认 5 分钟缓存窗口,不影响站点访问速度。

免费模式开关

支持临时开启全局免授权模式,适用于系统试运行、内部测试或促销阶段,一键切换。

用户使用授权码 · 自主激活绑定

无需联系客服,三步完成授权,随时查看与管理已绑定域名

1
获取授权码

联系管理员或通过采购渠道获得授权码,格式形如 AUTH-XXXX-XXXX-XXXX-XXXX,支持单域名 / 多域名 / 无限域名三种类型。

2
自助绑定域名

打开下方「自助激活」页面,填入授权码和你的域名,系统会自动归一化(去协议 / 端口 / 路径 / www),并在授权额度内完成绑定。

3
下载并接入 SDK

绑定成功后下载 DomainAuthClient.php 或 domain-auth-client.js,在客户站点按接入指南粘贴代码即可完成域名授权保护。

授权码自助激活平台

支持查看授权码类型、额度使用进度、已绑定域名列表,随时解绑释放额度。激活成功会自动将授权码状态标记为已使用。

  • 授权码防重复占用:域名已被其它码占用时给出明确提示
  • 额度检查:单域名 / 多域名 / 无限域名按类型严格控制绑定数
  • 有效期自动生效:根据授权码 expire_days 自动写入域名过期时间
  • 全程事务保护:高并发下不串授权码、不超额度
PREVIEW · 激活页效果
授权码自助激活
填入授权码 + 域名,立即完成绑定
✅ 激活后可查看类型、额度进度、已绑定域名并解绑

安全设计

从签名到缓存,多层防护防止伪造与重放

  • HMAC‑SHA256 签名:请求按参数排序后签名,服务端验签,防止伪造。
  • 时间戳 + Nonce:签名中带时间戳和随机数,防止重放攻击(5 分钟窗口)。
  • 失败即拒绝:签名错误 / 授权失败 / 网络异常默认拒绝访问。
  • www 等价匹配:授权 example.com 自动放行 www.example.com。
  • 缓存隔离:缓存键 = md5(域名+授权码),防止不同域名串缓存。
  • 密码哈希:管理员密码使用 password_hash(bcrypt)加密存储。
模块说明
签名验证每个请求按参数排序后签名,服务端验签
防重放时间戳 + 随机数,5 分钟有效期窗口
失败拒绝签名错误 / 未授权 / 网络异常均拒绝
www 等价主域名授权后自动放行 www 子域
缓存隔离md5(域名+授权码) 作为缓存键
密码加密bcrypt 哈希存储,不可逆

常见问题

接入前你可能想知道的

检查授权服务器地址是否可从客户服务器访问;检查客户服务器是否开启 cURL 或 allow_url_fopen;如使用 HTTPS 自签名证书,cURL 已禁用验证一般不会有问题。

请先前往「授权码激活」页面绑定域名;如已绑定仍提示未授权,检查授权码类型的绑定额度是否已用完、或域名是否填错(www 前缀会自动等价处理,其它子域需独立绑定)。

默认缓存 5 分钟,最长等 5 分钟就会失效。如需立即生效,可删除客户端 .auth_cache / .domain_auth_cache 目录,JS 清空 localStorage。

授权 example.com 后,www.example.com 会自动等价匹配放行,无需重复添加。但其他子域名(如 api.example.com)必须独立授权。

开始使用授权码自助激活

授权码在手,域名一键绑定,绑定后下载 SDK 粘贴接入即可。

前往激活