【问题标题】:CURLOPT_SSLVERSION on my webserver我的网络服务器上的 CURLOPT_SSLVERSION
【发布时间】:2016-06-25 09:13:34
【问题描述】:

我有一个使用 paypal 付款方式的网站,当用户尝试付款时显示以下错误:

curl_error: 35
SSL connect error

我使用 curl 拨打 paypal 电话:

ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $endpoint);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
//curl_setopt($ch, CURLOPT_SSLVERSION, 4);
curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1); 

//turning off the server and peer verification(TrustManager Concept)
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

curl_setopt($ch, CURLOPT_CAINFO, dirname(__FILE__) . '/Certs/api_cert_chain.crt');

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);

$headers_array = paypal_adaptive_setupHeaders();
if (!empty($sandboxEmailAddress)) {
    $headers_array[] = "X-PAYPAL-SANDBOX-EMAIL-ADDRESS: " . $sandboxEmailAddress;
}

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers_array);
curl_setopt($ch, CURLOPT_HEADER, false);

所以我有两个问题

1- 我该如何解决这个问题?

adding : PPHttpConfig::$DEFAULT_CURL_OPTS[CURLOPT_SSLVERSION] = 4; cause 500 server error

2- 有没有办法知道我的网络服务器上使用的 CURLOPT_SSLVERSION? (专用服务器,我可以访问所有权限来安装更新的东西......) 3-更新OPEN SSL可以解决吗?

谢谢大家。

【问题讨论】:

    标签: ssl curl paypal


    【解决方案1】:

    cURL 错误 35 是 CURLE_SSL_CONNECT_ERROR,它指出:

    SSL/TLS 握手中出现问题。你真的想要 错误缓冲区并在那里读取消息,因为它指出了 问题稍多。可以是证书(文件格式、路径、 权限)、密码等。

    鉴于 PayPal 最近所做的更改,这可能是两件事中的一件。

    1. 您的 cURL/OpenSSL 版本不支持 TLS(几个月前 PayPal 停止支持 SSLv3 及以下版本,这破坏了很多客户端)。由于您已禁用对等验证,这可能是问题所在。

    2. api_cert_chain.crt 不再包含 PayPal 正在使用的正确证书颁发机构证书。

    【讨论】:

    • 是的,我更新了 openssl 和 curl 版本,现在可以完美运行了,谢谢您的回复。
    【解决方案2】:

    在 paypal 上有一份关于安全升级和您的服务器必须支持与 PayPal 通信的协议的信息传单。 这是信息页面的链接:https://www.paypal-knowledge.com/infocenter/index?page=content&widgetview=true&id=FAQ1913&viewlocale=en_US#TLS

    您必须确保 openssl 和 Curl 在您的服务器上具有正确的版本才能建立连接。

    显然你应该有以下要求: -openssl 版本 >= 1.0.1 - 卷曲版本 >= 7.34.0。

    【讨论】:

      猜你喜欢
      • 2017-11-26
      • 2011-08-03
      • 2011-04-18
      • 1970-01-01
      • 2013-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多