首页 > 解决方案 > WP - 对外部 API 的 cURL 调用停止工作 - cURL 错误 60:SSL 证书问题:证书已过期

问题描述

我在一个一直工作到上周五的 WP 网站上使用 cURL 创建了一些“基本”API 调用。

从那时起,我收到此错误消息。错误 n:60,错误:SSL 证书问题:证书已过期。

现在我刚刚检查了https://www.ssllabs.com/ssltest/analyze.html?d=ombri-immo.lu (ombri-immo.lu 是网站的域名)并且证书仍然有效。

(为了彻底,我有两个网站调用相同的 API 并返回相同的错误)

 $ch = curl_init();

  curl_setopt_array($ch, array(
    CURLOPT_URL => 'https://middleware-production.easy2pilot-v8.com/api/***/token',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_SSL_VERIFYPEER, false,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_POSTFIELDS =>'{
    "login": "**",
    "password": "**"
  }',
    CURLOPT_HTTPHEADER => array(
      'Content-Type: application/json;charset=UTF-8'
    ),
  ));
  
  $response = curl_exec($ch);

  echo 'GETINFO: ' . curl_getinfo($ch) . '<br/>';
  echo curl_errno($ch) . '<br/>';
  echo 'CURL ERROR: ' . curl_error($ch) . '<br/>';

  curl_close($ch);
  echo $response;  

这是调用的代码。凭据工作正常,因为我在 Postman 上对其进行了测试,一切都很好。

我已经阅读了很多帖子,其中大多数都建议在服务器端触摸一些东西,我无法访问也没有关于功能的知识,我理所当然地认为是域提供者 (OVH) 负责处理该问题。

此外,我并不完全负责该项目,并且知道 WordPress 不是最新的(希望这将在明天发生并修复所有问题:))而且我注意到安装在服务器上的 curl 版本是旧的(我再次联系了经销商并要求他更新。

是否有人对尝试的事情有任何建议,或者例如域和服务器提供商是否应该能够解决这个问题?

感谢您花时间阅读这篇文章。

标签: wordpresssslcurlovh

解决方案


我可以看到的问题是您的 CA 捆绑包在 ombri-immo.lu 域中不正确,因此必须对其进行更新。

证书链:证书链不验证

此证书由 R3 CA 捆绑包颁发。

-----BEGIN CERTIFICATE-----
MIIEZTCCA02gAwIBAgIQQAF1BIMUpMghjISpDBbN3zANBgkqhkiG9w0BAQsFADA/
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
DkRTVCBSb290IENBIFgzMB4XDTIwMTAwNzE5MjE0MFoXDTIxMDkyOTE5MjE0MFow
MjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUxldCdzIEVuY3J5cHQxCzAJBgNVBAMT
AlIzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuwIVKMz2oJTTDxLs
jVWSw/iC8ZmmekKIp10mqrUrucVMsa+Oa/l1yKPXD0eUFFU1V4yeqKI5GfWCPEKp
Tm71O8Mu243AsFzzWTjn7c9p8FoLG77AlCQlh/o3cbMT5xys4Zvv2+Q7RVJFlqnB
U840yFLuta7tj95gcOKlVKu2bQ6XpUA0ayvTvGbrZjR8+muLj1cpmfgwF126cm/7
gcWt0oZYPRfH5wm78Sv3htzB2nFd1EbjzK0lwYi8YGd1ZrPxGPeiXOZT/zqItkel
/xMY6pgJdz+dU/nPAeX1pnAXFK9jpP+Zs5Od3FOnBv5IhR2haa4ldbsTzFID9e1R
oYvbFQIDAQABo4IBaDCCAWQwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8E
BAMCAYYwSwYIKwYBBQUHAQEEPzA9MDsGCCsGAQUFBzAChi9odHRwOi8vYXBwcy5p
ZGVudHJ1c3QuY29tL3Jvb3RzL2RzdHJvb3RjYXgzLnA3YzAfBgNVHSMEGDAWgBTE
p7Gkeyxx+tvhS5B1/8QVYIWJEDBUBgNVHSAETTBLMAgGBmeBDAECATA/BgsrBgEE
AYLfEwEBATAwMC4GCCsGAQUFBwIBFiJodHRwOi8vY3BzLnJvb3QteDEubGV0c2Vu
Y3J5cHQub3JnMDwGA1UdHwQ1MDMwMaAvoC2GK2h0dHA6Ly9jcmwuaWRlbnRydXN0
LmNvbS9EU1RST09UQ0FYM0NSTC5jcmwwHQYDVR0OBBYEFBQusxe3WFbLrlAJQOYf
r52LFMLGMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjANBgkqhkiG9w0B
AQsFAAOCAQEA2UzgyfWEiDcx27sT4rP8i2tiEmxYt0l+PAK3qB8oYevO4C5z70kH
ejWEHx2taPDY/laBL21/WKZuNTYQHHPD5b1tXgHXbnL7KqC401dk5VvCadTQsvd8
S8MXjohyc9z9/G2948kLjmE6Flh9dDYrVYA9x2O+hEPGOaEOa1eePynBgPayvUfL
qjBstzLhWVQLGAkXXmNs+5ZnPBxzDJOLxhF2JIbeQAcH5H0tZrUlo5ZYyOqA7s9p
O5b85o3AM/OJ+CktFBQtfvBhcJVd9wvlwPsk+uyOy2HI7mNxKKgsBTt375teA2Tw
UdHkhVNcsAKX1H7GNNLOEADksd86wuoXvg==
-----END CERTIFICATE-----

您可以在ssllabs -> Certification Paths -> Select any Mozilla|Apple|Android|Java|Windows-> Path #2: Not trust (invalid certificate [Fingerprint SHA256: 0687260331a72403d909f105e69bcf0d32e1bd2493ffc6d9206d11bcd6770739]) -> 4 在信任库中确认

DST Root CA X3   Self-signed
Fingerprint SHA256: 0687260331a72403d909f105e69bcf0d32e1bd2493ffc6d9206d11bcd6770739
Pin SHA256: Vjs8r4z+80wjNcr1YKepWQboSIRi63WsWXhIMN+eWys=
RSA 2048 bits (e 65537) / SHA1withRSA
Valid until: Thu, 30 Sep 2021 14:01:15 UTC
EXPIRED
Weak or insecure signature, but no impact on root certificate

推荐阅读