我已经在 OS X Mavericks 上安装了 AMPPS,当我尝试使用SoapClient
该类在 PHP 中通过 HTTPS 访问 WSDL 时出现以下错误。
SOAP 错误:解析 WSDL:无法从“ https://www.some-domain.com/Webservice.asmx?WSDL ”加载:无法加载外部实体“ https://www.some-domain.com/安全/api/Webservice.asmx?WSDL "
OpenSSL、SOAP 和 cURL 在我运行时启用phpinfo()
。我可以使用file_get_contents()
. 没有防火墙阻止连接。同一网络上的其他计算机可以正常连接。下面是我的代码。它适用于生产服务器以及我使用过的其他几台计算机。
$this->wsdlUrl = 'https://www.some-domain.com/Webservice.asmx?WSDL';
$this->client = new SoapClient($this->wsdlUrl);
$this->client->Connect(array(
/* Login credentials */
));
我也尝试使用verify_peer
设置为的流上下文false
,但结果相同。正如某些人所建议的那样,增加default_socket_timeout
选项也不起作用。
我知道还有其他几个关于此错误的问题,但我找不到适合我的建议解决方案。
有任何想法吗?提前致谢!