SOAP-ERROR: Parsing WSDL: Couldn't load from ... — SSL misconfiguration?

SOAP-ERROR: Parsing WSDL: Couldn't load from ... — SSL misconfiguration?

只要通过 HTTPS 加载 WSDL,

SoapClient 就会抛出此异常。但是,WSDL 文件 通过 HTTPS 可用的。通过浏览器和托管 SOAP 服务器本身的服务器上的 curl。 Gzip 也不是问题,防火墙也不是。也尽可能排除了特定于软件的方面 (Magento)。

尽管文件可用,但 SOAP 应用程序无法加载自己的 WSDL 文件的原因可能是什么?甚至有任何开始吗?还是我应该重新开始深入研究 Magento 本身?

一个对我来说不明确的 HTTP 500 错误被发回,如果它有任何相关性的话。

提前致谢!

我的 Magento 2 SOAP API 终于可以使用开发 SSL 证书了。 我在我的 Apache 日志中发现了导致我遇到主要问题的错误:

未捕获异常:警告:SoapServer::SoapServer():SSL 操作失败,代码为 1。OpenSSL 错误消息:\nerror:14090086:SSL routines:ssl3_get_server_certificate:certificate 验证失败

以下是清除所有问题的设置:

我的端点 (SOAP) URL 使用 https。

我的整个 magento 商店都使用 https(不安全和安全)。

我为 apache2 编辑了 php.ini 文件:

原文:openssl.cafile=

新版本:openssl.cafile=/my/path/to/dev.crt

重新启动 apache,清除 Magento 缓存,并且 php 还缓存 WSDL,因此需要 运行 "sudo rm -rf /tmp/wsd-*" 才能看到结果(哎呀!)。

如果您记得在进行这些更改后清除 3000 个不同的缓存,您将有望使用未经验证的开发证书通过 Magento 成功更新 SOAP。

我最终做到了注释掉 openssl.cafile 行、清除 /tmp WSDL 缓存并重新启动 apache 会导致 SOAP 调用崩溃的地步,而重做这一切会使它成为现实再次工作。可以肯定地说,这就是我遇到的问题。