遇到 SSL certificate problem, verify that the CA cert is OK 錯誤時,可採用以下兩種方式之一:
$ch = curl_init();
// ... 其他設置 ...
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 不驗證證書
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); // 不驗證主機名
// curl_exec($ch);
/path/to/cacert.pem)。curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_CAINFO, dirname(__FILE__) . '/cacert.pem');
作者嘗試方法二仍報相同錯誤,可能因 CA 文件路徑、權限或 OpenSSL 版本問題。參考國外資深文章:Using cURL in PHP to access HTTPS (SSL/TLS) protected sites。
cacert.pem。openssl.cafile php.ini 設置或使用 CURLOPT_CAPATH 指定目錄。