簡體   English   中英

Facebook PHP SDK僅適用於本地主機

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM