我們希望爲使用過的圖片,css和javascript設置expires頭文件來改善pagespeed,但是我們在修改css或js腳本時意識到緩存問題。智能解決方案expires頭文件
是否可以在加載xhtml的文件中添加元標記或其他標記,該標記告訴瀏覽器刷新每個元素,而不管現有圖像,css或js上設置了什麼緩存?
我們希望爲使用過的圖片,css和javascript設置expires頭文件來改善pagespeed,但是我們在修改css或js腳本時意識到緩存問題。智能解決方案expires頭文件
是否可以在加載xhtml的文件中添加元標記或其他標記,該標記告訴瀏覽器刷新每個元素,而不管現有圖像,css或js上設置了什麼緩存?
你可能想要做的是版本你的靜態內容。所以你說你有一個main.css文件,那麼你可以通過將它重命名爲main_0.css來進行版本化(只是一個例子),然後你將緩存設置爲一年。如果您需要更新main.css,只需增加版本號並更新您的引用。然後所有客戶將獲得最新版本。
有幾種解決方案,可以爲你做這個版本,但是這是基本原則..
具有高速緩存相關的問題時,我經常發現theese資源非常有用:
希望這會有所幫助。
編輯
這裏是一個版本的解決方案(的mod_pagespeed),做什麼我上面所解釋的:
是否有可能加元或其他標記在加載xhtml的文件中,該標記告訴瀏覽器刷新每個元素,而不管現有的i上設置了什麼緩存法師,CSS或JS?
不是我所知道的。
我們要設置爲過期使用的圖像,CSS和JavaScript頭改善的PageSpeed
這在我看來是一件好事。
但我們知道修改css或js腳本時的緩存問題。
如果您對CSS或JS做出了重大更改,那麼您應該正在進行更改。通過將新的CSS和JS放在不同的路徑上來管理這些更改,並在進行更改時更改HTML中的引用。這使您可以:
據我所知,沒有這樣的捷徑。
即使是這樣 - 重點是什麼?發送這樣的頭文件首先會挫敗將來到期頭文件的目的。
當設置過期頭,你需要某種形式的資產版本添加到您的元素,如<link rel="stylesheet" href="css/style.css?v=2">
路徑更改爲資產將達到同樣的目的。
是的,這是一個麻煩。但是cache invalidation is a hard problem,真的沒有簡單的方法。
我喜歡你的編輯,但也有一些像IIS一樣的東西嗎? – 2011-05-20 08:37:04
不是我意識到,如果我是你我只要安裝apache2 + mod_pagespeed並將請求轉發給IIS – netbrain 2011-05-20 08:55:43