通过将核心 php api 部署在自有服务器并强制买家通过 api 密钥调用,可有效避免源码泄露,同时实现访问控制、权限管理与商业授权闭环。
在将检查类(Checker)脚本商业化销售时,最核心的安全矛盾在于:前端 HTML/CSS/JS 必然暴露于客户端,无法真正加密;而真正体现业务逻辑与价值的 PHP 后端 API,一旦交付给买家部署,极易被复制、篡改或无限分发——这直接威胁您的知识产权与持续收益。
最佳实践是「不交付后端」:将 PHP API 完全保留在您可控的服务器上,买家仅获得轻量级前端(HTML + JS),所有敏感校验逻辑均通过 HTTPS 请求您的远程接口完成。关键在于建立可信的身

买家前端 JS 调用(需替换 YOUR_API_KEY):
fetch('https://api.yourdomain.com/check', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': 'abc123xyz789' // 为每位买家独立生成的密钥
},
body: JSON.stringify({ data: 'to-validate' })
})
.then(res => res.json())
.then(data => console.log(data));您服务器上的 check.php(精简版):
['status' => 'active', 'limit' => 1000, 'expires' => '2025-12-31'],
'def456uvw012' => ['status' => 'active', 'limit' => 500, 'expires' => '2025-06-30']
];
$key = $_SERVER['HTTP_X_API_KEY'] ?? '';
if (!isset($validKeys[$key]) || $validKeys[$key]['status'] !== 'active') {
http_response_code(401);
echo json_encode(['error' => 'Invalid or expired API key']);
exit;
}
// 2. 可选:记录调用次数 / 校验有效期(防止滥用)
if (strtotime($validKeys[$key]['expires']) < time()) {
http_response_code(403);
echo json_encode(['error' => 'License expired']);
exit;
}
// 3. 执行您的核心校验逻辑(此处仅为示意)
$result = ['valid' => true, 'score' => 95, 'details' => 'Passed all checks'];
echo json_encode($result);
?>您不需要保护 JS 或 CSS —— 它们本就不该承载核心逻辑。真正的保护,来自于将业务能力封装为受控服务,并通过 API Key 构建第一道商业防火墙。这套方案对 PHP/JS 初学者友好,无需复杂加密或混淆,却能显著提升盗用门槛,同时为您后续增加订阅计费、用量统计、灰度发布等功能预留清晰架构路径。起步阶段,专注做好密钥分发、有效期管理和错误反馈即可稳步落地。