我正在使用Ioncube对脚本进行编码,并希望确保它仅适用于许可域。这通常是怎么做的?
我在想这样的事情:
function domain(){
}
if($this_domain <> domain()){
exit('no');
}
或
$allowed_hosts = array('foo.example.com', 'bar.example.com');
if (!isset($_SERVER['HTTP_HOST']) || !in_array($_SERVER['HTTP_HOST'], $allowed_hosts)) {
header($_SERVER['SERVER_PROTOCOL'].' 400 Bad Request');
exit;
}
但我不确定这是否正确。 strpos会更好吗?
答案 0 :(得分:2)
这是浪费的尝试。任何坚定的开发人员都可以破解您的代码并删除阻止算法。
然而,根据算法,这很好
$allowed_hosts = array('foo.example.com', 'bar.example.com');
if (!in_array($_SERVER['HTTP_HOST'], $allowed_hosts)) {
header($_SERVER['SERVER_PROTOCOL'].' 400 Bad Request');
exit;
}
答案 1 :(得分:0)
我知道这是一篇老文章,但我不得不说,我建议您使用IonCube“动态密钥”进行许可。
除此之外,此软件的新版本还具有直接为每个域构建许可证的新功能。我使用了几年,但生成了使用“动态密钥”的自动许可系统