php curl请求微信发红包接口出现错误:Peer's Certificate issuer is not recognized.
发布日期:2025-05-02 04:11:34 浏览次数:16 分类:精选文章

本文共 921 字,大约阅读时间需要 3 分钟。

PHP版本:5.6.29

OpenSSL版本:OpenSSL 1.0.1e-fips 11 Feb 2013

最近在使用curl请求微信发红包接口时,出现以下错误提示:

Peer's Certificate issuer is not recognized.

问题分析

  • 错误提示解读

    该错误提示表明curl尝试连接的服务器的SSL证书颁发者(CA)未被系统识别。这通常意味着:

    • 服务器的SSL证书配置有误。
    • PHP的SSL库未能正确加载CA存储。
  • 可能原因

    • 证书配置问题:服务器的SSL证书可能未正确安装或配置。
    • PHP SSL库设置:PHP的openssl扩展可能未能加载最新的CA存储。
    • 证书日期问题:证书可能已过期,或者CA的证书未被正确信任。
    • CA配置问题:服务器上的CA根证书可能未被正确注册到系统的信任存储中。
  • 解决方案

  • 检查并验证SSL证书配置

    • 确保服务器上安装了正确的SSL证书文件,包括私钥和证书链。
    • 使用openssl s_client -connect命令测试连接,查看是否能成功连接到服务器。
  • 更新PHP的SSL库

    • 确认PHP版本支持最新的OpenSSL库。
    • 使用以下命令更新PHP的SSL扩展:
      pecl install openssl  pecl enable openssl
  • 重新安装SSL证书

    • 如果证书过期或配置错误,尝试重新安装SSL证书:
      sudo openssl reinstall
  • 尝试使用自签名证书

    • 如果是自签名证书问题,可以直接使用自签名证书进行测试,跳过CA验证。
  • 检查CA根证书

    • 确保CA根证书已被正确注册到系统的信任存储中,例如:
      sudo update-ca-certificates
  • 升级OpenSSL版本

    • 如果问题依旧,升级OpenSSL库可能会解决兼容性问题。
  • 建议

    • 如果问题仍未解决,建议提供curl请求的详细日志,以便进一步诊断。
    • 确保所有CA根证书已被正确注册,尤其是在Linux系统中,通常需要手动管理CA存储。

    通过以上步骤,应该能够解决Peer's Certificate issuer is not recognized错误,恢复curl请求的正常功能。

    上一篇:PHP curl请求错误汇总和解决方案
    下一篇:php curl常用的5个例子

    发表评论

    最新留言

    网站不错 人气很旺了 加油
    [***.192.178.218]2026年06月08日 21时12分37秒