无法连接到端口8080:连接被拒绝错误号码:7(cURL)

时间:2017-10-19 09:04:34

标签: php linux curl

我有以下代码 -

$url = 'http://52.77.156.123:8080/LebuPay/check-payment';

$ch = curl_init($url);

$data = array(
"successURL"  =>  'http://jsonviewer.stack.hu',
"failureURL"  =>   'http://jsonviewer.stack.hu',
"amount"  => $amount,
"orderTransactionID"  => $order_id,
"firstName" =>   "",
"lastName"  =>  "",
"email" => "",
"mobileNumber"  => "",
"accessKey" =>  "some_random_key"
);

$jsonEncode = json_encode($data);

curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonEncode);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE );
curl_setopt($ch, CURLOPT_HEADER, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));

$result = curl_exec($ch);
$result = json_decode($result, true);

echo "Error CURL: " . curl_error($ch) . " \nError number: " . 
curl_errno($ch);

curl_close($ch);


$token = $result['token'];
header("location: http://52.77.156.123:8080/LebuPay/execute-payment?token=$token");

代码适用于我的本地主机,但是当我将其上传到服务器上时(Godaddy linux)。它给了我错误"无法连接到52.77.156.123端口8080:连接被拒绝错误号码:7"

我试图获得响应的API在AWS上托管。

知道如何解决这个问题吗?谢谢。

1 个答案:

答案 0 :(得分:2)

由于更改服务器时出现问题,我怀疑问题是阻止端口的传出服务器。

This, admittedly old, forum post说:

  

我不知道它是否适用于除共享主机以外的任何其他内容,但Godaddy共享主机具有除防火墙以外的所有传出端口

  

问题在于Godaddy共享托管不会让您从您的网站向80以外的任何端口发出请求。

     

就像有一所房子,除了前门外,所有的门窗都是焊接在一起的。

  

与Godaddy支持人员交谈并被告知端口8080被阻止,即使在他们的专用服务器上也是如此。

在此期间,这可能已经发生了变化,但由于您遇到了问题,我认为它没有。

可能的解决方案:

  • 不要使用糟糕的主机(Godaddy有一个可怕的声誉)
  • 以某种方式说服Godaddy打开港口
  • 找一个允许您使用端口80在Godaddy网络之外获取请求的代理