运维日志您现在的位置是:首页 > 博客日志 > 运维日志

关于php:如何解决cURL错误(7):无法连接到主机?

<a href='mailto:'>微wx笑</a>的头像微wx笑 2022-11-19运维日志 0 0关键字:   

需要注册的是,如果你从一开始就遇到错误(7),可以从各方面来检查原因;如果开始的时候是可以成功请求的,但是后来就出错了,可能先遇到52、56等错误,再继续请求,就是错误(7)了;这是因为服务器把你的ip给封了,通常是为了防采集。

需要注册的是,如果你从一开始就遇到错误(7),可以从各方面来检查原因;如果开始的时候是可以成功请求的,但是后来就出错了,可能先遇到52、56等错误,再继续请求,就是错误(7)了;这是因为目标服务器把你的ip给封了,通常是为了防采集。VSj无知


VSj无知

如果解决呢?VSj无知

从一开始就要小心的用,比如每次请求之间加一个延迟:VSj无知

$scnd = mt_rand (2000000,5000000);
    echo "<br><br>延迟 sleep(" . $scnd . ");微秒";
    usleep($scnd);

以上代码会随机增加 2 到 5 秒的延迟。VSj无知


VSj无知

但是VSj无知

如果已经被目标服务器把ip给封了怎么办呢?VSj无知

这就只能通过代理服务器解决了。VSj无知

相关代码:VSj无知

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
$proxy = "http://123.123.123.123:8080";
curl_setopt($curl, CURLOPT_PROXY, $proxy);//设置通过的HTTP代理服务器
$headers = array("referer: http://www.abc.com/", "X-Forwarded-For:123.123.123.123", "CLIENT-iP:123.123.123.123");
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);


VSj无知

本文由 微wx笑 创作,采用 署名-非商业性使用-相同方式共享 4.0 许可协议,转载请附上原文出处链接及本声明。
原文链接:https://www.ivu4e.com/blog/service/2022-11-19/1598.html

很赞哦! () 有话说 ()

上一篇:curl命令错误码汇总

下一篇:返回列表

相关文章