![](/img/trans.png)
[英]load a new page when an html's selector changes without javascript
[英]Cache JavaScript & CSS on user's browser and load new one when changes are made
我希望用戶的瀏覽器緩存外部.css和.js文件。 但是,每次進行更改時,我都希望用戶的瀏覽器能夠加載更新的外部文件,而不是使用以前的緩存。
我發現在添加ext .css和.js文件時添加參數會有所幫助。 但是,當我這樣做時,我發現瀏覽器不再緩存文件,而是在每次訪問該頁面時繼續加載外部文件。 我可以知道如何解決這個問題嗎?
基本上,您有2個選擇:
使用Etag 。 如果托管提供商允許,則可以在.htaccess
文件中配置Etag: <Directory /path/to/directory>
FileETag INode MTime Size
</Directory><Directory /path/to/directory>
FileETag INode MTime Size
</Directory>
不是參數,而是將版本添加為文件名的一部分。 例如:style_10.css
為了理解緩存,我推薦Mark Nottingham的緩存教程: http : //www.mnot.net/cache_docs/ 。
如果設置了正確的“ Expires”標頭,即使添加了動態URL參數,文件也將被緩存。 因為這確實是解決問題的最有效方法。
大多數Web服務器將使用文件的修改日期來向瀏覽器報告文件是否已更改。 瀏覽器應該正確地請求帶有If-Modified標頭的文件,以便使用緩存的副本。
您確定瀏覽器尚未執行正確的操作?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.