【问题标题】:Failed to connect to : Connection refused - cURL PHP连接失败:连接被拒绝 - cURL PHP
【发布时间】:2018-01-07 18:53:33
【问题描述】:

所以这就是场景。

1) 在我运行 MAMP 的本地计算机上,我没有遇到任何问题,并且我能够成功获得响应以及 CURLINFO_HTTP_CODE=200

2) 但是,我的 PHP 代码部署在一个远程服务器上。如果我尝试运行相同的东西(正如我在 #1 中提到的那样),我会收到一个错误,上面写着

curl_error = Failed to connect to my_ip port my_port: Connection refused 与 CURLINFO_HTTP_CODE = 7

$url = 'myURL';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT ,30); //timeout in seconds
curl_setopt($ch,CURLOPT_TIMEOUT, 20); // same for here. Timeout in seconds.
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        'Content-Type: application/json',
        'Content-Length: ' . strlen($data_string))
);

$data_string = {"name":"mark"} `

【问题讨论】:

  • 嗯,错误信息很清楚,不是吗?该目标服务器拒绝连接。很可能两者之间有防火墙。或者该服务器不提供所有请求/接口。如果有疑问,您只需检查服务器请求日志文件。
  • @arkascha 是的,你说的是对的。但是,当我在本地主机上时,为什么不会出现同样的问题呢?
  • 嗯,显然网络拓扑的观点与那个开发系统不同。我不能告诉你为什么,只有你知道那个网络。

标签: php php-curl


【解决方案1】:

就我而言,从 localhost 调用 API 是成功的,但是当我从在线网站调用 API 时出现错误(连接被拒绝)。这是因为 API 的 IP 在我们的内部网络(公司网络)上可用,而不是在互联网上。我知道这是个愚蠢的错误。

【讨论】:

    猜你喜欢
    • 2019-08-22
    • 1970-01-01
    • 1970-01-01
    • 2021-01-27
    • 2019-10-31
    • 1970-01-01
    • 1970-01-01
    • 2015-06-06
    相关资源
    最近更新 更多