Paypal - CURL 响应在新服务器中为 0(连接超时),在旧服务器中没问题

问题描述 投票:0回答:2

我正在尝试从新服务器连接到 Paypal Sandbox。如果我在我的本地计算机上测试代码(使用 XAMPP)它工作正常。另外,如果我在我的旧服务器上测试代码,它也可以正常工作(相同的 PHP 版本和库,并且新服务器应该具有与旧服务器相同的配置(尽管我开始怀疑它......)。

我将 CURL 输出重定向到一个文件,这就是我得到的(curl_error() 中的类似输出):

About to connect() to svcs.sandbox.paypal.com port 443 (#0)
Trying 173.0.82.89... * Connection timed out
couldn't connect to host
Closing connection #0

这是 curl_getinfo() 的输出:

[url] => https://svcs.sandbox.paypal.com/AdaptivePayments/Pay?actionType=PAY...
[http_code] => 0
[header_size] => 0
[request_size] => 0
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 0
[namelookup_time] => 0.058702
[connect_time] => 0
[pretransfer_time] => 0
[size_upload] => 0
[size_download] => 0
[speed_download] => 0
[speed_upload] => 0
[download_content_length] => 0
[upload_content_length] => 0
[starttransfer_time] => 0
[redirect_time] => 0

这是PHP代码:

$ch = curl_init();    
curl_setopt($ch, CURLOPT_URL, $URL);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER
    , array(
    'X-PAYPAL-SECURITY-USERID: '.$api_userid
    , 'X-PAYPAL-SECURITY-PASSWORD: '.$api_pass
    , 'X-PAYPAL-SECURITY-SIGNATURE: '.$api_signature
    , 'X-PAYPAL-APPLICATION-ID: '.$api_appid
    , 'X-PAYPAL-REQUEST-DATA-FORMAT: NV'
    , 'X-PAYPAL-RESPONSE-DATA-FORMAT: NV'
    )    
);

$response = curl_exec($ch);

我认为问题指向服务器配置问题,但我对我必须查看的方式有点迷茫:PHP 配置、Apache、防火墙……有什么想法吗?

php curl paypal
2个回答
0
投票

你可以比较 phpinfo() 列表


0
投票

好的。这是一个 SSL 配置问题。传出 SSL 端口 (443) 已关闭,因此服务器无法与 Paypal 建立连接。

感谢您的想法:)

© www.soinside.com 2019 - 2024. All rights reserved.