【发布时间】:2017-07-23 09:12:16
【问题描述】:
我正在尝试在 PHP 中对我的本地主机执行 cURL 请求,但出现以下错误:
cURL 错误(7):无法连接到 localhost 端口 8000:连接被拒绝
我尝试在 Google 上搜索此消息,并且在 StackOverflow 上也发现了类似的问题,但似乎没有任何效果。
curl.php:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "localhost:8000/test.php");
curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$response = curl_exec($ch);
if (curl_errno($ch)) {
echo 'cURL error (' . curl_errno($ch) . '): ' . curl_error($ch);
} else {
echo $response;
}
curl_close($ch);
test.php:
echo json_encode(array(
"message" => "Hello World!"
));
如果我删除“CURLOPT_IPRESOLVE”值,请求将永远无法解析。我还尝试将“CURLOPT_SSL_VERIFYPEER”和“CURLOPT_SSL_VERIFYHOST”都设置为false。还是不行。
但是,如果我在浏览器中导航到 localhost:8000/test.php,我会得到正确的响应。我也可以使用“curl localhost:8000/test.php”命令并收到正确的响应
感谢您的帮助!
【问题讨论】:
-
如果您使用的是 linux,请确保服务器正在使用 /etc/init.d/httpd status 运行
-
我正在使用 Windows 和 WAMP。但它显示所有服务都在运行。我也试过重新启动它。同样的问题
-
使用完整的 URL "localhost:8000/test.php" 和 http://