Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Paypal-CURL响应在新服务器中为0(连接超时),它';在旧服务器中是可以的_Php_Curl_Paypal_Connect - Fatal编程技术网

Php Paypal-CURL响应在新服务器中为0(连接超时),它';在旧服务器中是可以的

Php Paypal-CURL响应在新服务器中为0(连接超时),它';在旧服务器中是可以的,php,curl,paypal,connect,Php,Curl,Paypal,Connect,我正在尝试从新服务器连接到Paypal Sandbox。如果我在本地计算机上测试代码(使用XAMPP),它工作正常。另外,如果我在旧服务器中测试代码,它也可以正常工作(相同的PHP版本和库,新服务器应该与旧服务器具有相同的配置(尽管我开始怀疑它…) 我将CURL输出重定向到一个文件,这就是我得到的结果(类似于CURL_error()中的输出): 这是curl_getinfo()的输出: 这是PHP代码: $ch = curl_init(); curl_setopt($ch, CURLOP

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

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

这是curl_getinfo()的输出:

这是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、防火墙等等。有什么想法吗?

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


谢谢你的想法:)

你能ping
svcs.sandbox.paypal.com
吗?你能打开
https://svcs.sandbox.paypal.com/
在您的浏览器中?我不能。似乎由于网络问题和服务器故障,可能更适合获取帮助。URL无法加载到浏览器中,并且不响应ping,但它可以从其他服务器访问CURL,因此可以。
[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
$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);