在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

回到顶部