2015-01-05 294 views
1

我已經在heroku上部署了我的節點應用程序,並且我有cloudflare作爲它的CDN infront。現在我的問題是,如果我的JavaScript有變化,並且如果我在cloudflare中清除緩存,這是否會自動清除瀏覽器緩存? 我有以下我expressjs服務器文件清除cloudflare上的緩存是否也清除瀏覽器上的緩存?

if ('production' == process.env.NODE_ENV) { //production 
    var oneYear = 31557600000; 
    app.use(express.static(__dirname + '/public', {maxAge: oneYear})); 
} else { //development 
    app.use(express.static(__dirname + '/public')); 
    app.use(express.errorHandler()); 
} 

設置如果CloudFlare的犯規清除瀏覽器緩存中清除,那麼什麼是每次我改變我的JavaScript或CSS文件的時間來清除瀏覽器緩存的最佳策略是什麼?

問候, 赤膽

+0

夥計們,請在這裏幫我。如果我將maxAge設置爲1毫秒,那麼瀏覽器總是會檢查是否有新內容。這會使cloudflare的緩存過期嗎?如果是,那麼cloudflare將提供新的內容。如果不是,那麼內容沒有變化,因此不會有緩存交換。我的假設是否正確? –

回答

0

你仍然可能想要做的,因爲瀏覽器緩存的瀏覽器硬刷新。

+0

但是如何以編程方式執行此操作,顯然我無法控制用戶行爲並要求用戶進行硬刷新,必須通過某種方式告訴緩存已過期,並且瀏覽器必須下載新的緩存。 –

+1

如果我將maxAge設置爲1 ms,該怎麼辦,因此瀏覽器總是會檢查是否有新內容。這會使cloudflare的緩存過期嗎?如果是,那麼cloudflare將提供新的內容。如果不是,那麼內容沒有變化,因此不會有緩存交換。我的假設是否正確? - –