在PHP SoapClient中禁用证书验证
有没有一种方法可以强制PHP中的内置SoapClient-class通过HTTPS连接到具有无效证书的服务器?
我已经在没有DNS条目或证书的服务器上部署了新应用程序。我想 在 设置DNS条目和修复证书 之前
尝试使用SoapClient连接到它,而最合理的方法似乎是使客户端在测试过程中忽略证书。
这仅用于测试。服务投入生产后,将有一个有效的证书,并且客户端将被迫对其进行验证。
回答:
SoapClient
在其参数中接受 流上下文
,您可以创建自己。这样,您可以控制传输层的几乎每个方面:
$context = stream_context_create([ 'ssl' => [
// set some SSL/TLS specific options
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
]
]);
$client = new SoapClient(null, [
'location' => 'https://...',
'uri' => '...',
'stream_context' => $context
]);
以上是 在PHP SoapClient中禁用证书验证 的全部内容, 来源链接: utcz.com/qa/404084.html