[英]Facebook PHP SDK: Unknown SSL protocol error
I have a PHP
script who make "get" requests to the Facebook API Graph
with the Facebook SDK
for PHP
.我有一个
PHP
脚本,它使用 Facebook SDK
for PHP
向Facebook API Graph
发出“获取”请求。
For a few days, my script fails (50% of the time, or more), I've got this error:几天来,我的脚本失败(50% 或更多),我收到此错误:
Unknown SSL protocol error in connection to graph.facebook.com:443
与 graph.facebook.com 相关的未知 SSL 协议错误:443
and I don't know why because:我不知道为什么,因为:
Here are the details:以下是详细信息:
#0 /var/www/oie/vendor/facebook/php-sdk-v4/src/Facebook/FacebookClient.php(216): Facebook\\HttpClients\\FacebookCurlHttpClient->send(' https://graph.f ...', 'GET', '', Array, 60) #1 /var/www/oie/vendor/facebook/php-sdk-v4/src/Facebook/Facebook.php(469): Facebook\\FacebookClient->sendRequest(Object(Facebook\\FacebookRequest)) #2 /var/www/oie/vendor/facebook/php-sdk-v4/src/Facebook/Facebook.php(342): Facebook\\Facebook->sendRequest('GET', '273607869342343...', Array, NULL, NULL, NULL) #3 /var/www/oie/src/AppBundle/Controller/APIGraphController.php(239): Facebook\\Facebook->get('273607869342343...') #4 [internal function]: AppBundle\\Controller\\APIGraphController->importAction(Object(Symfony\\Component\\HttpFoundation\\Request)) #5 /var/www/oie/var/bootstrap.php.cache(3042): call_user_func_array(Array, Array) #6 /var/www/oie/var/bootstrap.php.cache(2997): Symfony\\Component\\HttpKernel\\HttpKernel->handleRaw(Object(Symfony\\Component\\HttpFoundation\\Request), 1) #7 /var/www/oie/var/bootstrap.php.cache(2
#0 /var/www/oie/vendor/facebook/php-sdk-v4/src/Facebook/FacebookClient.php(216): Facebook\\HttpClients\\FacebookCurlHttpClient->send(' https://graph.f ... ', 'GET', '', Array, 60) #1 /var/www/oie/vendor/facebook/php-sdk-v4/src/Facebook/Facebook.php(469): Facebook\\FacebookClient->sendRequest(对象(Facebook\\FacebookRequest)) #2 /var/www/oie/vendor/facebook/php-sdk-v4/src/Facebook/Facebook.php(342): Facebook\\Facebook->sendRequest('GET', '273607869342343 ...', Array, NULL, NULL, NULL) #3 /var/www/oie/src/AppBundle/Controller/APIGraphController.php(239): Facebook\\Facebook->get('273607869342343...') # 4 [内部函数]:AppBundle\\Controller\\APIGraphController->importAction(Object(Symfony\\Component\\HttpFoundation\\Request)) #5 /var/www/oie/var/bootstrap.php.cache(3042): call_user_func_array(Array,数组) #6 /var/www/oie/var/bootstrap.php.cache(2997): Symfony\\Component\\HttpKernel\\HttpKernel->handleRaw(Object(Symfony\\Component\\HttpFoundation\\Request), 1) #7 /var /www/oie/var/bootstrap.php.cache(2 337): Symfony\\Component\\HttpKernel\\HttpKernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request), 1, true) #8 /var/www/oie/web/app.php(18): Symfony\\Component\\HttpKernel\\Kernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request)) #9 {main}
337): Symfony\\Component\\HttpKernel\\HttpKernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request), 1, true) #8 /var/www/oie/web/app.php(18): Symfony\\Component \\HttpKernel\\Kernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request)) #9 {main}
What is the problem?问题是什么?
I've same problem (SSL protocol error) with https://packagist.org/packages/facebook/graph-sdk#4.0.23我和https://packagist.org/packages/facebook/graph-sdk#4.0.23有同样的问题(SSL 协议错误)
https://packagist.org/packages/facebook/php-sdk-v4 is abandoned FYI https://packagist.org/packages/facebook/php-sdk-v4被放弃仅供参考
the problems is with SSL certificate and cURL negotiation问题在于 SSL 证书和 cURL 协商
I have solved with this change我已经解决了这个变化
inside vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookCurlHttpClient.php
or vendor/facebook/php-sdk-v4/src/Facebook/HttpClients/FacebookCurlHttpClient.php
在
vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookCurlHttpClient.php
或vendor/facebook/php-sdk-v4/src/Facebook/HttpClients/FacebookCurlHttpClient.php
search public function openConnection
function and inside options array add搜索
public function openConnection
函数和内部选项数组添加
CURLOPT_SSLVERSION => 6
and change和改变
CURLOPT_SSL_VERIFYPEER => false
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.