当我试图使用Braintree_Exception_SSLCertificate生成一个客户端令牌时,我总是会得到一个Braintree_ClientToken::generate()异常。我已经加载了SDK,我的PHP设置似乎满足了SDK的最低要求。
我正在运行的PHP和cURL版本是:
PHP 5.5.3
cURL 7.32.0和OpenSSL/1.0.1e。在我的cURL模块中启用了SSL。
我注意到Braintree正在执行TLS1.2,所以我认为这可能是问题所在,但我尝试在Braintree SDK中向Http.php添加以下行:
curl_setopt($curl, CURLOPT_SSLVERSION, 6);这应该将cURL设置为使用TLS 1.2,但它似乎没有帮助,我不知道如何验证设置是否生效。
我还没有成功地向Braintree的API发出请求,所以我担心这是我做错的事情,或者我使用的cURL版本是不好的。有什么是我需要启用SSL,我错过了吗?
谢谢布拉德。
发布于 2016-12-19 21:01:43
发布于 2017-12-09 09:56:05
好吧,我刚爬过喜马拉雅山。上面的解决方案根本不是一个解决方案。这是我为解决这个问题所做的。对于Centos 7机器来说,yum更新有时是无用的。唯一的解决方案是手动更新OpenSSL和Curl。
有15个步骤:
下载最新的OpenSSL软件包。
wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz解压缩
tar -xzvf openssl-1.0.2l.tar.gz输入文件夹
cd openssl-1.0.2l配置
./config --shared 安装
make && make install这不是旅程的结束,你也必须更新卷发。下载最新版本的curl。
wget https://curl.haxx.se/download/curl-7.55.1.tar.gz解压缩
tar -xzvf curl-7.55.1.tar.gz输入文件夹
cd curl-7.55.1设置库路径
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/ssl/lib配置
./configure --prefix=/usr/local/curl/ --without-nss --with-ssl=/usr/local/ssl/安装
make && make install备份一点
mv /usr/bin/curl /usr/bin/curl.bak链接它
ln -s /usr/local/curl/bin/curl /usr/bin/curl最后,检查您的卷曲版本
curl --version如果您正确地执行了所有这些步骤,它将显示
curl 7.55.1 (x86_64-pc-linux-gnu) libcurl/7.55.1 OpenSSL/1.0.2lhttps://stackoverflow.com/questions/41134473
复制相似问题