Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php curl:(60)SSL证书:无法获取本地颁发者证书_Php_Ssl_Curl - Fatal编程技术网

php curl:(60)SSL证书:无法获取本地颁发者证书

php curl:(60)SSL证书:无法获取本地颁发者证书,php,ssl,curl,Php,Ssl,Curl,我有一个VPS,我正试图在我的网站集成一个支付网关。我在我的站点(COMODO)中安装了SSL证书,按照网关提供商的指示,我必须通过cURL建立安全连接。 代码如下: $c = curl_init(); curl_setopt($c, CURLOPT_HEADER, 0); curl_setopt($c, CURLOPT_URL, $stringbuffer); curl_setopt($c, CURLOPT_POST, true); curl_setopt($c, CURLOPT_POSTFI

我有一个VPS,我正试图在我的网站集成一个支付网关。我在我的站点(COMODO)中安装了SSL证书,按照网关提供商的指示,我必须通过cURL建立安全连接。 代码如下:

$c = curl_init();
curl_setopt($c, CURLOPT_HEADER, 0);
curl_setopt($c, CURLOPT_URL, $stringbuffer);
curl_setopt($c, CURLOPT_POST, true);
curl_setopt($c, CURLOPT_POSTFIELDS, $s);
curl_setopt($c, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($c, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($c, CURLOPT_CAINFO, "/home/site/ssl/certs/Cert.pem");
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
这个Cert.pem,我从他们的网站(使用chrome)中提取出来,然后通过openssl将其转换为pem。现在,每当我尝试建立此连接时,都会出现以下错误:

CURL ERROR: 60::SSL certificate problem: unable to get local issuer certificate
我可以访问php.ini,因此在进行了大量搜索后,我尝试将以下内容添加到ini文件中:

[curl]
curl.cainfo="/home/site/ssl/certs/myCert.pem"

[openssl]
openssl.cafile="/home/site/ssl/certs/myCert.pem"
其中myCert.pem是我的网站证书,我再次将其提取为cer,然后使用openssl将其转换为pem

我还试图在ini文件中添加myCert,但没有成功


任何想法,请不要要求我关闭verifypeer,因为我不能这样做

我在使用AmazonS3时遇到了同样的问题,我有两个php.ini文件,并且添加了curl.cainfo的路径,我仍然有同样的问题