我在 Stack Overflow 上阅读了另一个问题的答案。让我先引用有罪的部分:
如果您的目标是让人们为此付费,那么您最好在服务器端为每个客户端注册一个密钥。然后,当他们连接更新时,他们将发送密钥,如果她在您的数据库中并且有效,您将输出您的 zip 文件。如果没有,你不会。
我问的是,从技术上讲,如何使用注册密钥方法保护他/她的基于 PHP 的项目?假设我们有这个:
$key = file_get_contents('http://auth.project.example.com/auth.php?auth_key=asd123');
if ( $key === "auth_valid" )
define('AUTH', TRUE);
之后,我们检查AUTH
我们(从客户的角度)是否购买了该系统。显然,如果我们不这样做,AUTH
将会FALSE
或根本不会被定义。问题是,一个对 PHP几乎一无所知的客户会很容易地注释掉这些行,hotwire AUTH
是 TRUE 并且他/她在那里,使用系统认为它已经被购买了,而实际上,它没有。