将PHP脚本限制为每个许可证一个域


limit PHP script to one domain per license

我正在用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会更好吗?

这是一次浪费的尝试。任何有决心的开发人员都可以破解你的代码并删除阻塞算法。

然而,根据算法,这是很好的

$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;
}

我知道这是一篇旧帖子,但我不得不说,我建议您使用IonCube"动态密钥"进行授权。

除此之外,该软件的新版本还具有直接为每个域构建许可证的新功能。我用了好几年,但我生成了使用"动态密钥"的自动许可系统