我们目前的networking堆栈安装在Plesk的CentOS 5.11服务器上。 我们正在使用PHP 5.4,cURL 7.47.1和openSSL 0.9.8e-fips-rhel5 2008年7月1日。我试图使用基于代码的代码来运行PayPal IPN: https : //github.com/paypal /ipn-code-samples/blob/master/paypal_ipn.php 。
问题是握手试图使用SSLv3似乎不支持贝宝(也许我错了?)。 我收到此错误: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure 。 我发现其他地方说要尝试一些事情。 所有我有。 我曾尝试使用
curl_setopt($ch, CURLOPT_SSLVERSION, 5);
curl_setopt($ch, CURLOPT_SSLVERSION, 6);
curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, "TLSv1");
curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, "TLSv1.2");
这些都没有工作。 cURL和OpenSSL都被更新为CentOS 5.11的最新端口。
我希望或者我错过了一些东西,有一种方法来运行没有TLS的PayPal IPN,或者有一种方法来更新openSSL到1.0.1g。 任何帮助将不胜感激。
注意:升级到CentOS 6不是一个选项。
你可以尝试编译openssl的新版本: https : //miteshshah.github.io/linux/centos/how-to-enable-openssl-1-0-2-a-tlsv1-1-and-tlsv1-2-上的centos-5 -和- RHEL5 /
更好的方法是迁移到新的CentOS6或CentOS7。 Plesk拥有出色的迁移pipe理工具。