Я знаю, что что-то подобное уже было предложено здесь, но я думаю, что моя проблема другая. Я пытаюсь сделать запрос curl на веб-сайт SSL propper (его не подписано самостоятельно). Я могу легко настроить параметры и даже импортировать пакет сертификатов CA в нужное место. Все отлично и хорошо, что я хотел бы надеяться, но я все еще получаю:не удалось получить сертификат локального эмитента даже с установленным комплектом
SSL certificate problem: unable to get local issuer certificate
Я посмотрел вокруг здесь и на Google и не могу показаться, чтобы решить эту проблему. Вот мой локон установка:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.115 Safari/537.36');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,2);
//curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_CERTINFO, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, getcwd()."/cookie_jar");
curl_setopt($ch, CURLOPT_HEADER, true);
$result = curl_exec($ch);
Edit2: Вот подробный вывод по запросу:
* Adding handle: conn: 0x3472770
* Adding handle: send: 0
* Adding handle: recv: 0
* Curl_addHandleToPipeline: length: 1
* - Conn 0 (0x3472770) send_pipe: 1, recv_pipe: 0
* About to connect() to www.caixagest.pt port 443 (#0)
* Trying 195.234.134.196...
* Connected to www.caixagest.pt (195.234.134.196) port 443 (#0)
* error setting certificate verify locations:
CAfile: C:\Winginx\ssl\certs\ca-bundle-old.crt
CApath: none
* Closing connection 0
error setting certificate verify locations:
CAfile: C:\Winginx\ssl\certs\ca-bundle-old.crt
CApath: none
Это определенно не доверяет сертификату, который ему предоставляется. Разве это не разрешено http://stackoverflow.com/questions/22973701/ssl-errors-using-mailchimps-api/29649024#29649024? – ahoffner