我正在使用 curl_multi 来测试一组代理,这些代理之前被证明是有效的。我的代码运行良好,但我收到很多 errno 7 响应,我觉得很难理解:
连接到 example.com:1 失败;操作正在进行中
连接到 example.com:1 失败;成功
(example.com 在这里代表我的带有测试脚本的实际服务器)
在基本 curl 中,相同的地址可能会返回:
无法连接到主机
这些消息的实际含义可能是什么?
我如何准备每个手柄:
function prepare_handle($item) {
$options = array();
$options[CURLOPT_RETURNTRANSFER] = 1;
$options[CURLOPT_REFERER] = TEST_REFERER;
$options[CURLOPT_PROXY]=trim($item['address']);
$options[CURLOPT_FRESH_CONNECT]=TRUE;
//$options[CURLOPT_CONNECTTIMEOUT] = CHECK_CONNECTTIMEOUT; // 20
$options[CURLOPT_TIMEOUT] = CHECK_TIMEOUT; // 60
$options[CURLOPT_NOBODY]=TRUE; // remove body
$url = HTTP_GATE . '?id=' . $item['id'];
if($item['socks']>0) {
// ustaw socks
$options[CURLOPT_PROXYTYPE]='CURLPROXY_SOCKS5';
}
$ch = curl_init($url);
curl_setopt_array($ch,$options);
return $ch;
}