我尝试创建基于域的许可系统。该脚本应在每次运行时检查许可证。我将使用托管在两个不同服务器和网络中的两个域,以便在服务器关闭时,另一个将帮助脚本进行许可。 看看下面的代码......
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”。这意味着如果任何服务器出现故障,将显示如上所述的错误消息。实际上我想显示“All is well”是任何包含许可证文件的服务器。
那么我的代码应该如何重写呢?我应该使用哪种功能?请帮帮我。
PS:我在这里是全新的,并不了解这类社区的规则。所以请帮我继续。不要直接关闭主题,帮我找出发布/提问的正确方法。答案 0 :(得分:1)
使用@file_get_contents
来抑制错误。
但是,在每个页面加载上执行远程HTTP请求是非常不可接受的。如果您的服务器(或其中一个)运行缓慢,那么执行请求的站点也会很慢。