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);