PHP cURL(SSL证书问题:证书链中的自签名证书)

时间:2020-11-08 21:56:45

标签: php wordpress curl php-curl

在生产环境中发出php cURL请求时,出现以下错误:SSL证书问题:证书链中的自签名证书。因为在我的本地计算机上,它可以正常工作。

以下是使用的代码:

$curl = curl_init();
 
curl_setopt_array($curl, array(
  CURLOPT_URL => $url,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    $authorization,
    "cache-control: no-cache"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

有人可以帮助我吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

就像它说的那样:您正在调用的URL使用一个自签名证书,并且由于自签名证书是不安全的,因此您会收到该错误消息。

如果您对此不安全的连接没问题,可以通过添加CURLOPT_SSL_VERIFYHOST选项忽略该错误。但是,出于安全考虑,您要考虑添加有效的证书。