我的应用程序使用Facebook SDK for PHP v2.0,在过去的20-24小时内停止工作。我一直从base_facebook.php-中得到以下错误
CurlException:35:错误:14094410:SSL例程:SSL3_READ_BYTES:sslv3警报握手失败
通过阅读stackoverflow上的其他线程,我向base_facebook.php添加了以下几行代码,但没有任何帮助。
$opts[CURLOPT_SSL_VERIFYPEER] = false;
$opts[CURLOPT_SSL_VERIFYHOST] = false;
$opts[CURLOPT_SSLVERSION] = 3;
curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, 'SSLv3');
如有任何解决问题的建议,我们将不胜感激。谢谢
这是因为这里的SSLv3漏洞:https://access.redhat.com/articles/1232123Facebook禁用了SSLv3,所以你不能再使用它了。
如果您有php 5.5或5.6,请尝试更改
$opts[CURLOPT_SSLVERSION] = 3;
至
$opts[CURLOPT_SSLVERSION] = CURL_SSLVERSION_TLSv1;
如果你能在没有持续错误的情况下使用它,那没关系。如果你的php版本低于5.5,只需注释这两行,之后就可以了。
$opts[CURLOPT_SSLVERSION] = 3;
curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, 'SSLv3');