Я пытаюсь использовать бесплатный клиентский сертификат cacert.org в curl call. проверьте следующее ...Клиентский сертификат на вызов EPP
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://url.com');
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_SSLCERT, 'cert.crt');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
Я скачал сертификат как PEM, теперь я получаю следующее сообщение об ошибке ...
unable to set private key file: 'cert.crt' type PEM
Я попробовал весь путь, но не мог исправить, попробовал Google, а также. Пожалуйста помоги.
Когда вы экспортировали сертификат, он включал закрытый ключ? – drew010
@ drew010 Нет, даже я купил платный ssl от comodo, но это тоже не решило мою проблему. – seoppc
Что вы пытаетесь сделать?'CURLOPT_SSLCERT' предназначен для указания сертификата проверки подлинности клиента, который используется для аутентификации на удаленном сервере. Некоторые CA используют их вместо паролей для входа в систему для управления вашей учетной записью, но сертификаты клиентов не являются слишком распространенными. Вместо этого вы ищете 'CURLOPT_CAINFO'? – drew010