2012-04-29 131 views
4

我已爲我的畫布應用實施了取消授權回叫。看起來Facebook無法通過https ping通Deauthorize Callback,但它對http沒有任何問題。我正在記錄所有連接,並且沒有ping來自Facebook的回調的記錄,但是如果我自己ping它,它就會被記錄下來。此外,如果我有Facebook通過URL調試工具(https://developers.facebook.com/tools/debug)ping回調,它是成功的。Facebook取消授權通過HTTPS回撥

鑑於https不起作用,我假設Facebook的服務器不關心我的證書的頒發者/權限。是否有明確的證書頒發機構名單,將與Facebook的後端流程配合使用?或者,有沒有辦法向Facebook提交新的權限,以便將其納入他們接受的證書頒發機構的列表中?

編輯:我的SSL證書由「Starfield Technologies」發佈,我相信它是GoDaddy的簡單DBA。我通常會避免GoDaddy,但這個SSL很便宜。也許我得到了我已經付出的東西,就像那樣。

+1

要確保這是證書的問題,您可以簡單地將位於您的域的任何OpenGraph對象的「HTTPS」鏈接傳遞給[URL Linter](http://developers.facebook.com/tools/debug)。或者訂閱實時更新只是爲了檢查是否已達到回撥......如果這是證書文件問題,則表示存在錯誤。 – 2012-04-29 05:50:33

+2

我同意Juicy。如果實時可以訪問https而不是deauth回調,那麼請向Facebook發送一個錯誤。在這裏報告,讓其他誰偶然發現這個stackoverflow問題知道這是一個記錄的錯誤。 FWIW,我認爲這不是證書的問題,否則沒有人能夠獲得HTTPS。 – DMCS 2012-05-01 21:30:27

+0

我目前在我的域中沒有任何OpenGraph對象,但是如果我將deauth回調鏈接傳遞給URL Linter(如上所述),則它可以訪問鏈接並顯示輸出,並指出它無法訪問一個OpenGraph對象。顯然,我的日誌顯示了當時在Facebook上的訪問。 由於這個原因,我認爲無論後端服務器ping什麼樣的deauth回調,問題都存在。我已經充分解決了這個問題,只需將我的deauth回調函數作爲HTTP鏈接與HTTPS進行比較。我會看到關於報告的信息(如果我能找到一種實際上由人類監控的報告方法)。 – CasaDeRobison 2012-05-07 00:40:31

回答

3

我終於明白了這個問題是什麼,並且想要記錄下來,以便其他人可以從我的愚蠢中受益。

我的能力是軟件開發。我不是一個熟練的網站管理員。我知道就夠了。問題是由於我的Web服務器的SSL配置。

兩年前我買了我的證書時,我沒有完全安裝它。我爲我的域創建並安裝了PEM文件,但從未配置Web服務器以瞭解證書權限包(在我的案例中爲sf_bundle.crt)。

這樣做的直接後果是,如果您從Web瀏覽器訪問安全deauth回調,並且您的Web瀏覽器配置了所有需要的根證書和中間證書,那麼您將成功「取消」應用程序。但是,如果一個Web客戶端(例如ping你deauth回調的Facebook後端計算機)嘗試訪問有問題的Web服務器,並且它尚未具有所有可用的中間證書,則SSL握手將失敗,因爲客戶端無法將證書一直認證回根CA證書。

我希望這是有道理的。正如我所說,網絡管理不是我的強項,我錯過了一步。如果您正確地在您的Web服務器配置中安裝了CA軟件包,Facebook後端計算機將能夠驗證您的站點併成功地ping您的deauth回調。

如果這裏有什麼不清楚的地方,請不要猶豫,問問。如果可以的話,我會幫忙的。