curl遇到的坑

curl遇到的坑

1、curl_setopt($ci, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);

服务器报错“Chunky upload is not supported by HTTP 1.0”,服务器不支持http1.0版本的协议,可以设置配置项的值,或许还有些服务器只支持更好版本的协议,如:CURL_HTTP_VERSION_2_0,修改尝试一下即可。

2、当请求的接口为https时候,需要不检查ssl协议证书

curl_setopt($ci, CURLOPT_SSL_VERIFYPEER, FALSE); // https请求 不验证证书和hosts
curl_setopt($ci, CURLOPT_SSL_VERIFYHOST, FALSE); // 不从证书中检查SSL加密算法是否存在

3、服务器禁用sslv3

因为之前的POODLE 病毒爆发,许多网站禁用了sslv3(nginx默认是禁用的,ssl_protocols 默认值为TLSv1 TLSv1.1 TLSv1.2;),最新使用sslv4,可以增加以下配置项:
curl_setopt($ci, CURLOPT_SSLVERSION, 4);   //sslv4

4、遇到其他问题时,可以打印错误报告查看

$response    = curl_exec($ci);
if ($debug) {
    echo "=====post data(打印请求参数)======\r\n";
    var_dump($postfields);
    echo "=====info(打印请求配置信息)===== \r\n";
    $requestinfo = curl_getinfo($ci);
    print_r($requestinfo);
    echo "=====response(打印返回信息)=====\r\n";
    print_r($response);
    echo "=====error(打印错误信息)=====\r\n";
    print_r(curl_error($ci));
}
curl_close($ci);
                       

点击阅读全文

上一篇 2023年 6月 5日 am10:49
下一篇 2023年 6月 5日 am10:51