错误描述:
SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure
出现这个的错误说明目标服务器的Curl SSL版本较高,
本地机器的CURL抓取程序版本较低,
对于Paypal-PHP-SDK修改方法:
方法一:直接更新SDK;
方法二:
建议在调用SDK时配置: PayPalHttpConfig::$defaultCurlOptions[CURLOPT_SSLVERSION]=4; //避免在更新SDK后覆盖修改
修改lib/Paypal/Core/PaypalHttpConfig.php
// 1 = TLSv1; unsafe: 2 = SSLv2, 3 = SSLv3
public static $defaultCurlOptions = array(
CURLOPT_SSLVERSION => 4, //默认1,改为4
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_TIMEOUT => 60, // maximum number of seconds to allow cURL functions to execute
CURLOPT_USERAGENT => 'PayPal-PHP-SDK',
CURLOPT_HTTPHEADER => array(),
CURLOPT_SSL_VERIFYHOST => 2,
CURLOPT_SSL_VERIFYPEER => 1,
CURLOPT_SSL_CIPHER_LIST => 'TLSv1'
//Allowing TLSv1 cipher list.
//Adding it like this for backward compatibility with older versions of curl
);