Задать вопрос
@up7

Unknown SSL protocol error без https?

Возможно ли установить соединение курл с http на https, если выдается ошибка:

35 Unknown SSL protocol error in connection to kdl.ru:443

Причем, что интересно с другими сайтами такого нет (

Игры с CURLOPT_SSLVERSION не помогают (

Вот полный код курла

<?
function get_web_page( $url )
{
    $options = array(
CURLOPT_USERAGENT => 'User-Agent: curl/7.39.0',
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_TIMEOUT => 20,
CURLOPT_HEADER => 0,	
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_SSLVERSION => 1
    );

    $ch      = curl_init( $url );
    curl_setopt_array( $ch, $options );
    $content = curl_exec( $ch );
    $err     = curl_errno( $ch );
    $errmsg  = curl_error( $ch );
    $header  = curl_getinfo( $ch );
    curl_close( $ch );

    $header['errno']   = $err;
    $header['errmsg']  = $errmsg;
    $header['content'] = $content;
    return $header;
}

$url = "https://kdl.ru/tests-results";
$header = get_web_page( $url );
echo $header['errno']." ".$header['errmsg'];

echo $header['content'];
?>
  • Вопрос задан
  • 1403 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Stepik
    PHP (pro)
    2 недели
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@none7
kdl.ru поддерживает только TLSv1.2. Вообще мануал рекомендует не устанавливать опцию CURLOPT_SSLVERSION, чтобы он сам угадал нужную. Странно, что curl даёт неизвестную ошибку, openssl сразу говорит, что удалённый хост не поддерживает TLSv1.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы