PHP curl请求错误汇总和解决方案

来源:互联网 发布:百度分享 seo 编辑:程序博客网 时间:2024/05/05 08:43

最近做了一个服务器监控,需要通过curl发出大量的http请求,这里列举了一下curl返回的常见错误码,方便下次排查问题:

错误信息含义解决方案Illegal characters found in URLURL中包含"\r",“\n"特殊字符
过滤这些特殊字符

if (strpbrk(data->change.url, "\r\n")) {
    failf(data, "Illegal characters found in URL");
    return CURLE_URL_MALFORMAT;
}

(参考:http://stackoverflow.com/questions/36499342/php-curl-multi-illegal-characters-found-in-url)
Connection time-out连服务器超时检查服务器之间网络通信是否正常name lookup timed outDNS服务器连接超时检查DNS服务器之间网络通信是否正常Operation timed out after 10000 milliseconds with 0 bytes received已经连接上服务器,但在s秒内未接收完所有数据检查服务器之间网络通信是否正常Couldn't resolve host 's1693.wukong.37.com'请求域名没有解析确认域名是否解析并生效,如果域名已经生效,则检查DNS服务器

其他TIPS:
  1. 最好设置CURLOPT_USERAGENT,让服务器看起来你像是一个浏览器用户访问。如果服务器或程序设置了user-agent限制,有可能导致请求失败。
    这里列举出了一个user-agent,看起来是google浏览器访问:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36