1

It's worked if $path is local path.

$path = /var/www/apiclient_cert.pem
curl_setopt($ch,CURLOPT_SSLCERT, $path);

But if $path is a url ,it is not worked,such as http://myfile.com/www/apiclient_cert.pem

why it is not worked if $path is a url?

function post( $strXml) {

$url='https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); 


curl_setopt($ch, CURLOPT_SSLCERT,'/var/www/html/hongbao/apiclient_cert.pem'); //Line-#1
curl_setopt($ch, CURLOPT_SSLKEY,'/var/www/html/hongbao/apiclient_key.pem');
curl_setopt($ch, CURLOPT_CAINFO, '/var/www/html/hongbao/rootca.pem');


curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $strXml);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$res = curl_exec($ch);
curl_close($ch);
return $res;
}
liulyn
  • 11
  • 1
  • 4

0 Answers0