尝试通过 PHP/Win32 将 Soap 连接到 https://WSDL 源,但不断出现错误:
Warning: SoapClient::SoapClient() [soapclient.soapclient]: I/O warning : failed to load external entity "https://...
如果我尝试在本地保存 WSDL 然后访问它,SoapFault->faultstring
属性会显示消息“SSL 支持在此构建中不可用”。
谷歌搜索后,似乎 PHP SOAP 无法连接到 HTTPS 源。不过 HTTP 没问题。
有解决办法吗?或者是否有我可以安装的替代 SOAP 版本/模块?
最佳答案
PHP5 对 SOAP 的 HTTPS 支持
如果您在尝试使用 SOAP 时看到有关缺少 https 包装器的错误消息(“无法找到包装器“https”——您是否在配置 PHP 时忘记启用它?”或“[HTTP] SSL 支持是在此版本中不可用”),您还没有安装 SSL 库来支持安全交易。
取消评论 扩展=php_soap.dll 在你的 php.ini 中
取消评论 扩展=php_openssl.dll 在你的 php.ini 中
复制 ssleay32.dll 和 libeay32.dll 到你的windows system32目录
重启 apache,瞧!
我最初是在以下位置找到这个答案的:http://webponce.com/rants/2008/04/https-support-for-soap-in-php5-under-windows/
关于PHP SOAP 无法连接到 SSL WSDL 源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2001003/