2
需要一些幫助來理解無處不在的cURL 58錯誤,這是由於在這種情況下包含帶有cURL請求的PEM文件。PHP cURL錯誤58
Error 58: unable to set private key file
我的代碼可以成功打開.pem文件(見fopen()調用),但捲曲抱怨說,它無法設置專用密鑰文件。試圖更好地理解客戶端上的某個東西(我)還是從主機返回的東西。很確定這是在我的最後,但不知道是什麼。
感謝
$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-----
您正在使用沒有私鑰的客戶端證書。爲什麼?我想你已經錯過了閱讀A)你想要什麼和/或B)什麼是客戶證書是... –