我目前正在測試一個網站,隨着開發的進行,並且幾乎每次客戶端腳本更新時,我都需要清除瀏覽器緩存以獲得新功能客戶端由於瀏覽器下載了.js文件的新鮮compy。客戶端腳本緩存在ASP.NET IIS應用程序
如果在生產中推出新版本的腳本,該怎麼辦?如何在客戶端瀏覽器上傳到服務器後立即獲取它?
我正在使用ASP.NET MVC 4站點。
我目前正在測試一個網站,隨着開發的進行,並且幾乎每次客戶端腳本更新時,我都需要清除瀏覽器緩存以獲得新功能客戶端由於瀏覽器下載了.js文件的新鮮compy。客戶端腳本緩存在ASP.NET IIS應用程序
如果在生產中推出新版本的腳本,該怎麼辦?如何在客戶端瀏覽器上傳到服務器後立即獲取它?
我正在使用ASP.NET MVC 4站點。
文件重命名爲創建版本:
所以
<script src="myscript.js"></script>
成爲
<script src="myscript-9-5-2012.js"></script>
而且每https://developers.google.com/speed/docs/best-practices/caching#LeverageProxyCaching
它不建議使用查詢字符串的版本(即myscript.js?v=1.1.0
)因爲具體是
大多數代理服務器,最顯着的是Squid通過版本3.0,不緩存資源的「?」在他們的網址...
最簡單的方式將增加的版本號的腳本文件(比如script_1.6.js等)
最好的辦法來阻止腳本從緩存添加每行結尾的隨機查詢字符串值。例如
<script src="/path-to-your-script/script.js?v=0b1"></script>
這是極具發展爲腳本永遠不會緩存,雖然在生產中你真正想要的瀏覽器緩存腳本來加快速度。
所以對於生產,你可能會想要介紹一些版本,如jquery,例如,jquery-1.8.0.js