本文介绍了cURL:操作在0毫秒后超时的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
cURL给我错误:
Operation timed out after 0 milliseconds with 0 out of 0 bytes received特别是,0毫秒部分是可疑的...
In particular, the "0 milliseconds" part is suspicious...
我的初始化代码:
$curl = curl_init($requestUrl); // private URL not published curl_setopt($curl, CURLOPT_FRESH_CONNECT, true); curl_setopt($curl, CURLINFO_HEADER_OUT, true); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-Type: application/xml", "Accept: application/xml")); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_TIMEOUT, 20); curl_setopt($curl, CURLOPT_FAILONERROR, false); curl_setopt($curl, CURLOPT_HTTP200ALIASES, range(400, 599)); curl_setopt($curl, CURLOPT_SSLVERSION, 3); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $data);超时似乎设置正确,可能有什么关系?
The timeout seems correctly set, what may be related it?
推荐答案当尝试通过https连接时,我有同样的问题。问题是与ssl版本。 这对我很有用:
I had the same issue, when tried to connect via https. Problem was with ssl version. This worked well for me:
$ch=curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSLVERSION, 3);更多推荐
cURL:操作在0毫秒后超时
发布评论