【发布时间】:2018-02-08 13:24:05
【问题描述】:
我已经通过 Yii 公开了几个 Web 服务。从 PHP 5.5.x 升级到 PHP 5.6.33 后,我遇到以下错误
SoapServer::SoapServer(): SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
该错误发生在 framework/web/services/CWebService.php (1.1.19) 的第 166 行,到目前为止我还没有找到任何解决方法,options 属性受到保护并且不知道如何绕过这个问题,但http://php.net/manual/en/soapserver.soapserver.php 似乎仍然不支持与 SoapClient 相同的选项
$options["stream_context"] = stream_context_create([
"ssl" => [
// set some SSL/TLS specific options
"verify_peer" => false,
"verify_peer_name" => false,
"allow_self_signed" => true
]]);
【问题讨论】:
-
看起来没有办法像 SoapClient 一样禁用 SoapServer 的证书验证 :-( 这使得开发更加困难。
标签: php web-services yii wsdl2php