你好StackOverflow社区,当我尝试在PHP上使用cURL方法时遇到了一个问题。我试着用此示例代码:PHP curl总是返回http_code 0
$html_brand = "www.google.com/";
$ch = curl_init();
$options = array(
CURLOPT_URL => $html_brand,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => true,
CURLOPT_HTTPHEADER => array("User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36"),
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_ENCODING => "",
CURLOPT_AUTOREFERER => true,
CURLOPT_CONNECTTIMEOUT => 120,
CURLOPT_TIMEOUT => 120,
CURLOPT_MAXREDIRS => 10,
);
curl_setopt_array($ch, $options);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($httpCode != 200){
echo "Return code is {$httpCode} \n"
.curl_error($ch);
} else {
echo "<pre>".htmlspecialchars($response)."</pre>";
}
curl_close($ch);
,它总是以错误结束,在屏幕上显示它:
返回代码为0的Recv失败:连接被重置
或者在尝试使用https访问任何网站时发生此错误:
返回码为0无法连接到www.goog le.com 443端口:定时 出
这是我的设置:
- Windows 7专业版32位
- 的Apache 2.4.12
- PHP 5.6.11
它是一个代码错误或我还没有考虑任何服务器配置?
Apache中的HTTP_HOST
值是localhost:8080
,我不确定它是否与我的问题有关,但也许值得注意。
谢谢大家提前。
你检查你的防火墙日志,看是否要求而作出的那么远? –
是这个问题,然后我无法弄清楚什么是不同的黑白答案和问题,看看http://stackoverflow.com/a/10228476/2558525 – Mubin
可能重复的[PHP cURL HTTP代码返回0](http ://stackoverflow.com/questions/10227879/php-curl-http-code-return-0) – Jan