2011-07-15 43 views
1

我试图创建一个基于域的授权系统。脚本每次运行时都应该检查许可证。我将使用托管在两个不同服务器和网络中的两个域,以便在服务器关闭的情况下,另一个域将帮助脚本进行许可。 看代码波纹管......PHP基于Doamin的授权系统

if (file_get_contents("http://domain.com/lic/ok.xml",0,null,0,1) !== false || file_get_contents("http://domain.net/lic/ok.xml",0,null,0,1) !== false) { 
echo 'All is well'; 
} else { 
echo 'Error, sorry!'; 
} 

输出:

Warning: file_get_contents(http://domain.com/lic/ok.xml) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in C:\wamp\www\ok.php on line 3 
All is well 

我刚刚创建的domain.net许可文件。在domain.com中,没有“ok.xml”。这意味着如果任何服务器出现故障,将显示如上所示的错误消息。其实我想显示“一切顺利”是任何包含许可证文件的服务器。

那么我的代码应该如何重写呢?我应该使用哪个功能?请帮帮我。 PS:我在这里是全新的,不知道这类社区的规则。所以请帮助我继续。不要直接关闭该话题,请帮助我找到正确的发布/提问方式。

回答

1

使用@file_get_contents来抑制错误。

但是,对每个页面加载执行远程HTTP请求几乎是不可接受的。如果您的服务器(或其中一个)速度较慢,那么执行请求的网站也会很慢。

+0

为我工作,非常感谢。 其实我会使用代码到一个WordPress插件。所以当用户尝试激活插件时,许可证将被检查。同样,当用户将访问插件选项/设置页面时,许可证将被检查。只是它... – IFightCode

+0

你知道人们可以删除你的代码吗? – ThiefMaster

+0

完成脚本后,我将使用ioncube编码器进行编码。 – IFightCode