0

昨天我們的域名在服務器處於高負載狀態時被錯誤地刪除了一條A記錄,而Facebook調試器工具可能會在網站停機期間多次刮掉該網站。Facebook調試器緩存不正確的DNS

服務器恢復正常,現在每當我在我們域的www版本上使用調試器工具時,即使站點正在工作,我也會不斷得到502錯誤的響應代碼。

DNS的TTL是300秒(CloudFlare),但這個緩存問題在事件發生後的18個小時內仍然發生。

我暫時解決了這個問題,通過302重定向到我們的域的非www版本,我們所有的帖子現在都完美地刮掉了,雖然這不是理想的,因爲我需要www。

我建立了一個稱爲'test'的樣子子域,並加載完全相同的內容,並且它完美地工作,因此消除了格式不正確的html作爲問題(也是非www可以正確使用完全相同的內容) 。

作爲進一步調查,我刪除了測試子域的A記錄,並在幾分鐘後放回來,以模擬最初的事件。在等待一個小時(並且TTL爲300)之後,Facebook調試器仍然返回502約30次中的29次,並且很少會得到200.

儘管我的測試子域返回200很少,我的www即使嘗試了大概1000次,域名也不會返回200,並且DNS在24小時前放回。

也許facebook緩存過期時間是基於它獲得的請求數量?在我的測試中,我只嘗試了幾次,但在我的網站停機的時候,大概有10,000股或更多的股票發生了。

因此,總體上看來,通過添加和刪除dns記錄,可以「破壞」一個永遠不會被刮取的子域,即使域在域傳播後很久就解決了。

我真的很想使用我的www子域名,但它只是沒有發生,直到我可以找到一種方式讓Facebook正確地抓取它。

回答

1

因此,它會在〜24小時後自動解決......我發現有趣的是,我的測試域如何在〜1小時內解決,而我的www域需要24小時。這就是讓我相信還有'別的東西'的原因,但事實證明那是沒有的。

我認爲有不同級別的東西被緩存了多長時間......並且因爲我的網站被要求了很多次,所以它可能會緩存更長的時間。

如果這種情況發生在您身上,請等待它。