【问题标题】:PHP Fatal error: Uncaught Exception: error:1408F10B:SSL routines:ssl3_get_record:wrong version number for /api.genius.comPHP 致命错误:未捕获的异常:错误:1408F10B:SSL 例程:ssl3_get_record:/api.genius.com 的版本号错误
【发布时间】:2018-08-01 10:29:34
【问题描述】:

我正在使用 Genius.com api 来获取歌曲信息。为了命中 api,我使用 curl。

$ch = curl_init();
    //curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, 0);
    curl_setopt($ch, CURLOPT_HTTPGET, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0); 
    curl_setopt($ch, CURLOPT_TIMEOUT, 600); //timeout in seconds
    curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_DEFAULT);
    curl_setopt($ch, CURLOPT_PORT, 443);
    // receive server response ...
    $server_output = curl_exec ($ch);
    if(curl_errno($ch)){
        $error_msg = curl_error($ch);
        echo $error_msg;
        echo "\n";
        //throw new Exception(curl_error($ch));
    }
    curl_close ($ch);

出现以下错误,

PHP 致命错误:未捕获的异常:错误:1408F10B:SSL 例程:ssl3_get_record:错误的版本号

我也尝试过其他 ssl 版本,但不起作用 CURL_SSLVERSION_TLSv1, CURL_SSLVERSION_SSLv2, CURL_SSLVERSION_SSLv3, CURL_SSLVERSION_TLSv1_3,

【问题讨论】:

    标签: php curl


    【解决方案1】:

    试试这个:

    curl_setopt($ch, CURLOPT_SSLVERSION, all);
    

    为我工作。

    【讨论】:

      猜你喜欢
      • 2014-01-12
      • 2020-11-28
      • 1970-01-01
      • 2021-06-01
      • 2019-02-14
      • 1970-01-01
      • 2020-09-07
      • 2015-06-20
      相关资源
      最近更新 更多