この場合、cURL 要求に PEM ファイルが含まれていることが原因である、どこにでもある cURL 58 エラーを理解するための助けが必要です。
Error 58: unable to set private key file
私のコードは .pem ファイルを正常に開くことができますが (fopen() 呼び出しを参照)、cURL は秘密鍵ファイルを設定できないと文句を言います。これがクライアント側 (私) にあるものなのか、ホストから返されたものなのかをよりよく理解しようとしています。それが私の側にあることは確かですが、何がわからないのですか。
ありがとう
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $this->apiURL);
$fh = fopen($this->certPath,'a+');
if($fh){
echo "File opened!";
fclose($fh);
} else {
echo "File not opened";
}
curl_setopt($ch, CURLOPT_SSLCERT, $this->certPath);
curl_setopt($ch, CURLOPT_POSTFIELDS, trim($SOAPrequest));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
if (curl_error($ch)) {
printf("Error %s: %s", curl_errno($ch), curl_error($ch));
}
curl_close ($ch);
return $result;
}
キー:
-----BEGIN CERTIFICATE-----
MIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCB
yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL
[...]
-----END CERTIFICATE-----