PHP: Решение - cURL error 60: SSL certificate
При отправке запроса средствами cURL можно получить ошибку: SSL certificate problem: unable to get local issuer certificate
.
Можно просто отключить проверку SSL-сертификата. Например, вот так:
$ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://site.com'); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); $result = curl_exec($ch);
Более правильным решением будет добавление сертификата в доверенные. Скачать свежую версию сертификата по адресу https://curl.haxx.se/ca/cacert.pem. Поместить данный файл на сервер. У меня это директория S:\Server\bin\php\extras\ssl
.
Далее в настройках файла php.ini
указать путь к данному файлу:
[curl] curl.cainfo = S:\Server\bin\php\extras\ssl\cacert.pem
Перезапустить apache.
// Находясь в директории bin ( путь/к/файлу/httpd ) httpd -k start httpd -k restart httpd -k stop (httpd - k shutdown) // Работа с apache как со службой Windows net stop apache2.4 net start apache2.4 // Мой httpd.exe S:\Server\bin\Apache24\bin\httpd -k restart