【发布时间】:2017-02-10 22:22:45
【问题描述】:
我在本地主机中测试了 enom api 的示例 php 代码,它运行正常。但是,当我在我的网络服务器中测试它时,它失败了。此示例代码使用 enom API 检查域可用性。 非常感谢任何想法为什么会发生这种情况。谢谢。我是使用 enom API 的新手。
// API 请求的 URL $url = 'https://resellertest.enom.com/interface.asp?command=check&sld=enom&tld=com&responsetype=xml&uid=resellid&pw=resellpw'; // 将 API 结果加载到 SimpleXML 对象中 $xml = simplexml_load_file($url); // 读取结果 $rrpCode = $xml->RRPCode; $rrpText = $xml->RRPText; // 根据结果执行操作 开关 ($rrpCode) { 案例 210: echo "可用域"; 休息; 案例 211: echo "域名不可用"; 休息; 默认: 回声 $rrpCode 。 ' ' 。 $rrp文本; 休息; }错误:
警告:simplexml_load_file():SSL 操作失败,代码为 1。OpenSSL 错误消息:错误:14077410:SSL 例程:SSL23_GET_SERVER_HELLO:sslv3 警报握手失败 /home/webdesigndavao/public_html/checkdomain.php 在第 26 行 警告:simplexml_load_file():无法在第 26 行的 /home/webdesigndavao/public_html/checkdomain.php 中启用加密 警告:simplexml_load_file(https://resellertest.enom.com/interface.asp?command=check&sld=enom&tld=com&responsetype=xml&uid=youruid&pw=passwordhere):无法打开流:/home/webdesigndavao/public_html/checkdomain 中的操作失败。第 26 行的 php 警告:simplexml_load_file():I/O 警告:无法在 /home/webdesigndavao 中加载外部实体“https://resellertest.enom.com/interface.asp?command=check&sld=enom&tld=com&responsetype=xml&uid=youruid&pw=passwordhere” /public_html/checkdomain.php 第 26 行 布尔(假)【问题讨论】:
-
什么不起作用?有什么错误吗?
-
我没有参考资料,但我与
file_get_contents()有类似的错误,所以我认为这是相同的。在我的 WebServer 中有alow_url_fopen和alow_url_include设置为 false 拒绝使用file_get_contents()的外部请求我不得不使用cURL来代替。 -
也许您必须检查服务器上的 OpenSSL 版本? stackoverflow.com/questions/35030756/…
-
您的 PHP 没有任何问题 - 它完全符合我的预期。当我运行这个脚本时,我只得到
Domain not available所以我认为你的openssl扩展有一些过时的东西,如果事实上你已经安装了它。要检查它是否已安装,您可以运行print_r(get_loaded_extensions()); -
@japhfortin 是的,我正在使用 PHP 7.0.8 运行 Apache/2.4.18 (Ubuntu)