Facebook PHP SDK仅在本地主机上工作
我有一个移动应用程序,它与PHP Facebook SDK的接口很好,直到最近。现在,只有当它指向我的本地主机开发服务器时,它才会登录。坦率地说,我完全被难住了。当然,我已经检查了Facebook开发者中心内的网站url。一切都指向实时服务器。但是只有开发服务器才会登录。有什么建议吗Facebook PHP SDK仅在本地主机上工作,php,facebook,cakephp-1.2,Php,Facebook,Cakephp 1.2,我有一个移动应用程序,它与PHP Facebook SDK的接口很好,直到最近。现在,只有当它指向我的本地主机开发服务器时,它才会登录。坦率地说,我完全被难住了。当然,我已经检查了Facebook开发者中心内的网站url。一切都指向实时服务器。但是只有开发服务器才会登录。有什么建议吗 These domains work: http://localhost:8888 http://testsite2:8888 These domains will not work: http://*.com
These domains work:
http://localhost:8888
http://testsite2:8888
These domains will not work:
http://*.com
https://*.com
根据要求,以下是我的facebook代码:
$config = array();
$config['appId'] = Configure::read('FB_APP_ID');
$config['secret'] = Configure::read('FB_APP_SECRET');
$config['fileUpload'] = false; // optional
$facebook = new Facebook($config);
$facebook->setAccessToken($this->data['User']['fbtoken']);
$receivedfbid = $facebook->getUser();
这在我的开发服务器上正常工作,直到最近,它在实时服务器上还可以正常工作。只是重申一下,facebook开发者中心被配置为指向实时服务器的站点url。所以这不是问题所在
在中更改应用程序设置我希望您将配置为localhost我在webhost上的web应用程序也有同样的问题,但在localhost上运行良好 在我的例子中,它与cURL和ssl有关 快速查看是否存在SSL问题的方法是告诉fb php sdk接受任何SSL证书,为此,请将以下内容添加到您的base_facebook.php文件中:
$opts[CURLOPT_SSL_VERIFYPEER] = false;
curl_setopt_array($ch, $opts);
将其放在$result=curl\u exec$ch之前
我知道你说你测试了非SSL连接,但你的base_facebook.php文件仍在寻找SSL证书。
如需进一步阅读,请参阅:显示您的facebook代码您的live server上是否有ssl证书?是的,我在live server上有ssl证书。您是指服务器的ssl证书吗?还是驻留在facebook目录中的facebook ssl密钥?我两者都有,但我也在非ssl连接上测试过,它不起作用。你能发布你的应用设置的屏幕截图吗?正如我已经说过的。我已经检查了Facebook开发者中心内的网站url设置。它们指向正确的url