Я использую cURL для проверки логинов в течение нескольких месяцев, а работает нормально.
$searchURL = "https://url.com/isTokenValid?";
$strCookie = 'asdf=' . $_COOKIE['asdf'] . '; path=/';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $searchURL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt( $ch, CURLOPT_COOKIE, $strCookie );
curl_setopt($ch, CURLOPT_CAPATH, "\cacert.pem");
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, FALSE);
if($answer = curl_exec($ch))
{
if (strpos($answer,'true') !== false)
{
$login = true;
}
else
{
$login = false;
}
Сегодня утром - он перестал работать, и я получаю сообщение об ошибке:
Ошибка скручивания: проблема сертификата SSL: невозможно получить сертификат локального эмитента
Я использую файл cacert.pem
из https://curl.haxx.se/ca/cacert.pem - в случае, если эти данные необходимо обновить или обновить в некоторых Кстати, я использую файл с этой даты, который по-прежнему остается самым актуальным:
Данные сертификата из Mozilla с: Wed Oct 28 04:12:04 2015
Это не моя сильная сторона в веб-разработке, поэтому я не уверен, как решить, что происходит здесь. Моя первая мысль состоит в том, что это должно быть что-то серверное, так как я не делал никаких изменений локально в течение выходных, но я не хотел начинать совать, если кто-то может указать мне в правильном направлении.
Спасибо!