0

我正在尝试将 curl 请求发送到另一个域,返回

ssl 连接错误,错误号。35 在 hostgator 上。

代码:

$url= $endpoint . "?".http_build_query($data);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_FORBID_REUSE, 1);
curl_setopt($curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);


$res = curl_exec($curl);
if(curl_error($curl))
{
    echo curl_errno($curl);
    echo 'error:' . curl_error($curl);
}

此问题特定于 hostgator

请让我知道如何摆脱 ssl 错误

4

1 回答 1

0

使用布尔值代替01代替 $value 字段

语法 -bool curl_setopt ( resource $ch , int $option , mixed $value )

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_FORBID_REUSE, true);
curl_setopt($curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);

笔记:

最好使用默认值(CURL_SSLVERSION_DEFAULT)。鉴于 SSLv2 和 SSLv3 中的已知漏洞,将其设置为 CURL_SSLVERSION_TLSv2 或 CURL_SSLVERSION_TLSv2 非常危险。

参考:- http://php.net/manual/en/function.curl-setopt.php

于 2016-08-07T07:31:50.693 回答