【发布时间】:2023-03-17 09:30:02
【问题描述】:
我使用 php curl 从同一域 url 中的 php 脚本获取内容。但我得到 curl_exec 错误。 curl 错误代码为 28 或操作超时。经过几天的调试,我发现它可以在像htm这样的非脚本页面上工作,但不能在php上工作,如果url是不同域上的脚本也可以。我已经调试了几天,没有找到解决方案。帮助表示赞赏。
$url = 'http://...';
$agent = '';
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 8);
curl_setopt($ch, CURLOPT_TIMEOUT, 8);
$result = curl_exec ($ch);
print "<pre>\n";
print_r(curl_getinfo($ch));
// get error info echo "\n\ncURL error number:" .curl_errno($ch);
// print error info echo "\n\ncURL error:" . curl_error($ch);
print "</pre>\n";
curl_close ($ch);
echo $result;
cURL 错误编号:28 cURL 错误:
8000 后操作超时 收到 0 个字节的毫秒数
好的:$url = @987654321@
失败:$url = @987654322@
【问题讨论】:
-
请显示一些代码,如果可能的话,显示一个超时 URL 的真实代码示例
-
卷曲代码:$url = 'http://...'; $代理 = ''; $ch = curl_init(); curl_setopt ($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 8); curl_setopt($ch, CURLOPT_TIMEOUT, 8); $result = curl_exec ($ch);打印 "
\n"; print_r(curl_getinfo($ch)); // 获取错误信息 echo "\n\ncURL 错误编号:" .curl_errno($ch); // 打印错误信息 echo "\n\ncURL error:" . curl_error($ch);打印“
\n”; curl_close ($ch);回声 $result; -
cURL 错误号:28 cURL 错误:操作在 8000 毫秒后超时,收到 0 个字节 好的:$url = http://../page.htm。失败:$url = http://.../page.php