![](/img/trans.png)
[英]Facebook php sdk getuser() not working on the web only on my localhost
[英]Facebook PHP SDK works only on localhost
我有一個直到最近才與PHP Facebook SDK良好交互的移動應用程序。 現在,僅當我將其指向本地主機開發服務器時,它才會登錄。 坦白說,我完全陷入了困境。 當然,我已經檢查了Facebook開發人員中心內的站點URL。 一切都指向實時服務器。 但是只有開發服務器可以登錄。有什么建議嗎?
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”。 所以那不是問題。
我在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_exec($ch);
我知道您說您在非SSL連接上進行了測試,但是您的base_facebook.php文件仍在尋找ssl證書。
有關更多信息,請參見: http : //unitstep.net/blog/2009/05/05/using-curl-in-php-to-access-https-ssltls-protected-sites/
更改您在developer.facebook.com中的應用程序設置,希望您配置為本地主機
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.