【问题标题】:PHP cURL error: SSL certificate problem: self signed certificatePHP cURL 错误:SSL 证书问题:自签名证书
【发布时间】:2022-01-26 15:51:11
【问题描述】:

长话短说,我不得不在我的 Mac 上重新安装 php 7.4。我有一个 .NET API 的 php webapp。在重新安装 php 之前,我能够在 https://localhost:5001 使用 php 中的 cURL 访问我的 API 的本地运行版本,但现在我得到一个响应代码为 0 并出现此错误:

Curl error: SSL certificate problem: self signed certificate

如果我将相同的 php 代码指向我的生产 API,一切正常。我能够使用 Postman 成功访问本地版本的 API。

我尝试了this post 接受的答案,但即使在重新启动 apache 和我的计算机后它对我也不起作用。我尝试了php.ini 和运行时方法,但都没有解决我的问题。

【问题讨论】:

    标签: php .net macos ssl curl


    【解决方案1】:

    您应该将自签名证书的公钥附加到 cacert.pem 文件中。然后任何一个解决方案(在 php.ini 中设置 curl.cainfo 或使用 CURLOPT_CAINFO 显式指定 cacert.pem 文件的路径)建议 here 应该可以正常工作。

    确保在添加公钥时尊重 cacert.pem 文件的格式。

    【讨论】:

    • 这对我有用,非常感谢您的帮助。对于以后可能会阅读此内容的任何人,请使用此命令获取您的本地主机公钥:``` openssl s_client -connect localhost:5001 ``
    猜你喜欢
    • 2021-02-20
    • 2020-09-20
    • 2014-02-06
    • 2021-12-14
    • 1970-01-01
    • 1970-01-01
    • 2021-08-07
    • 2019-12-11
    • 2018-01-10
    相关资源
    最近更新 更多