>我正在使用Facebook-PHP-SDK通过Facebook对用户进行身份验证。
正在发生的事情是,用户被重定向到Facebook以获取访问代码,然后Facebook通过请求中的redirect_uri变量将用户重定向回我的应用程序。
当请求被发回时,facebook-php-sdk 正在尝试验证此代码,并使用 fb_ca_chain_bundle.crt 文件通过 SSL 使用 cURL 将请求发送回 facebook。
我收到以下异常:
SSL CA 证书有问题(路径?访问权限?
我根本没有修改 sdk,只是调用 SDK 中的方法。
该文件具有 rwxr-x-r-- 权限,应用程序以"apache:apache"运行,并且整个应用程序具有相同的 perms。
关于如何解决我的问题的任何想法?
使用 SSL,请确保您已从 PHP.ini。
添加这个:
curl_setopt( $curl, CURLOPT_SSL_VERIFYHOST, 0);
我有同样的错误,对我来说工作得很好。
[参考资料]卷曲请求在 SSL 上失败?
如果你知道:
- .crt 文件的路径正确;
- 文件具有读取权限;
- OpenSSL在PHP.ini中很活跃,
您可以尝试在curl_exec($curl)
之前编写curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
(而不是CURLOPT_SSL_VERIFYHOST)。