cURL在错误的地方寻找CA.

在Redhat Linux上,在PHP脚本中,我设置了cURL选项:

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, True); curl_setopt($ch, CURLOPT_CAINFO, '/home/andrew/share/cacert.pem'); 

然而,当我尝试发送数据时,却遇到了这个exception

 (curl error: 77) error setting certificate verify locations: CAfile: /etc/pki/tls/certs/ca-bundle.crt CApath: none 

为什么要在/etc/pki/tls/certs/ca-bundle.crt中/etc/pki/tls/certs/ca-bundle.crt ? 我不知道这个文件夹是从哪里来的,因为我没有把它放在任何地方。

不应该在我指定的地方寻找/home/andrew/share/cacert.pem吗? 我没有写入权限/etc/所以只是复制文件没有一个选项。 我是否错过了一些我应该使用的curl选项?

(这是共享主机 – 是否有可能阻止我为CAfile设置不同的path?)

尝试用CURLOPT_CAPATHreplaceCURLOPT_CAINFO。

还可以看看SSLCERT选项。