小编Xyt*_*ops的帖子

Docker 容器上的应用程序之间的 Curl 连接被拒绝

我有一个网站 (ZF1) 和一个 API (Laravel) 在同一个 Docker (Laradock) 容器上运行。我可以通过浏览器分别访问每个,但是当我从网站向应用程序发出 cURL 请求时,我得到一个空响应并且标头返回 0。如果我输出 cURL 错误,那么我得到这个:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, '[API_ENDPOINT]');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_close ($ch);

echo curl_strerror(curl_errno($ch));

(7) Failed to connect to [API_HOST] port 80: Connection refused
Run Code Online (Sandbox Code Playgroud)

但是,如果我从应用程序向https://www.google.com发出 cURL 请求,则会返回结果。我也尝试使用 file_get_contents(),但我没有收到任何响应和以下警告:

[Thu May 18 21:41:33.828737 2017] [proxy_fcgi:error] [pid 949:tid 139999802541824] [client 172.20.0.1:49652] AH01071: Got error 'PHP message: PHP Warning:  file_get_contents
([API_ENDPOINT]): failed to open stream: Connection refused in /var/www/projects/[APPLICATION_PATH]/[CONTROLLER].php on line …
Run Code Online (Sandbox Code Playgroud)

php apache curl docker laradock

2
推荐指数
1
解决办法
7851
查看次数

标签 统计

apache ×1

curl ×1

docker ×1

laradock ×1

php ×1