Код: Выделить всё
$q = 'https://www.example.org/'; // for example
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $q);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
$json = curl_exec($ch);
Код: Выделить всё
error:14077458:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 unrecognized name
Я проверил здесь https://www.ssllabs.com/ssltest/analyze.html, чтобы увидеть доступные протоколы для этот сервер обнаружил, что SSL3 и SSL2 недоступны, но доступны TLS 1.2, TLS 1.1 и TLS 1.0. Выполняя поиск в Google, я обнаружил, что лучше всего не указывать версию SSL, которая фактически автоматически согласовывает лучший уровень для использования. Хотя я пытался установить версию TLS в CURLOPT_SSLVERSION (как показано ниже), но возникла та же ошибка.
Код: Выделить всё
curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2);
Я попытался объяснить все, что я сделал, но если вам нужна дополнительная информация, пожалуйста, спрашивайте. Любая помощь будет принята с благодарностью.
Большое спасибо
Подробнее здесь: https://stackoverflow.com/questions/298 ... sv1-unreco