2012-05-15 54 views
4

我們的網站使用Facebook評論框插件。我們在我們的防火牆後面的暫存站點中包含評論框,這意味着Facebook無法訪問它並生成「URL無法訪問」錯誤。這我明白。正在緩存Facebook評論框的「URL無法訪問」錯誤?

但是,一旦頁面發佈並且可以通過Facebook訪問,該錯誤仍會顯示。點擊與錯誤一起提供的調試鏈接可以很容易地解決這個問題,但是我的內容編輯人員不希望每次都這樣做,他們有時會忘記。

一旦你使用調試器,似乎可達狀態被緩存和重置。任何人都能想到另一種解釋嗎?

我想我可以省略暫存站點的Facebook評論框,但寧願不要。任何其他想法?

回答

2

在他們解釋Like Button的文檔時,頁面被報廢:

什麼時候Facebook的刮我的網頁?

Facebook需要刮你的網頁,知道如何顯示它圍繞 該網站。

Facebook每24小時刮一次您的頁面以確保屬性爲 最新。當Open Graph 頁面的管理員單擊「Like」按鈕時以及將URL輸入到 Facebook URL Linter中時,該頁面也會被抓取。 Facebook會在您的網址上觀察緩存標頭 - 它會按照首選項的順序查看「過期」和「緩存控制」。 但是,即使您指定的時間較長,Facebook也會每24小時刮一次您的 頁面。

刮板的用戶代理是: 「facebookexternalhit/1.1 (+ HTTP://www.facebook.com/externalhit_uatext.php)」

這裏有三種選擇:

  1. 您可以通過發出一個簡單的http請求來調用調試器,當您發佈文章時(或者您發佈的內容),您可以從服務器執行該操作,而無需使用調試器工具。

  2. 您可以檢查用戶代理字符串的請求,如果它是Facebook的刮板允許它,以便它可以緩存頁面。

  3. 您可以使用不同的URL來進行生產和分段,這樣,分段頁面的緩存在生產中將無關緊要。

+0

Nitzan,感謝您確認行爲並提供建議。 –

相關問題