2012-06-04 33 views
3

我正在使用雲端作爲CDN。有沒有辦法強制內容更新?我在原始服務器上有一個文件,我用新版本(相同名稱,新日期時間戳)更新了該文件。但是當我在雲端檢查它時,它仍然是舊文件。強制將內容更新爲cloudfront,而不使用無效

我見過this thread這表明一種方法是無效的,但我不想這樣做,因爲它的開銷我認爲並且一次最多可以運行3個失效請求。我讀過雲端支持dynamic content using query parameters,我可以利用它來強制cloudfront從分發服務器獲取最新內容。

回答

4

第一個是你提到的顯式調用invalidate()。他們有3個無效請求限制,但每個請求最多可包含1000個對象,在大多數情況下,這些對象都足夠了。根據文件通常需要10 - 15分鐘,但我的經驗相當波動(在某些情況下可能需要30分鐘)。

動態參數的另一種方法絕對是可行的,哪種方法是首選。你需要的是在你的鏈接的結尾添加一個時間戳參數。喜歡的東西:

http://www.example.com/img/logo.png?timestamp=123456789

一旦你更新你的logo.png,改變時間戳到新:

http://www.example.com/img/logo.png?timestamp=223456789

而且CloudFront的就能區分這兩種,並挑選合適的一。

所以是的,我相信你的分析是正確的。

相關問題