我在浏览器缓存方面遇到了一些问题。当css, js, image
文件更改内容但不更改名称时,我们必须发送到浏览器下载新文件并丢弃缓存文件。
只需按F5或类似的内容即可更新新文件。
方式 强制浏览器忘记缓存并下载新版本的文件?
答案 0 :(得分:0)
有些人“问题”
This 和 this 页面给了我一个想法,我想分享它。 :)
。我的目录结构是:
website/
|- libs/
|- css/
|- js/
|- imgs/
|- system/
|- site/
|- .htacces
|- index.php
所以,我们可以使用.htacces
文件来“傻瓜”这样的浏览器:
RewriteRule ^libs\.v[0-9]{1,}(.*) libs/$1
RewriteRule ^(.*)\.v[0-9]{1,}\.css$ $1.css
并且,在html
文件上使用此:
<link rel="stylesheet" type="text/css" media="all" href="path/to/libs/css/style.v2.css" />
<script type="text/javascript" src="path/to/libs/js/javascripts.v1.js"></script>
<img src="path/to/libs/imgs/logo.v5.png" alt="Logo" />
或
<link rel="stylesheet" type="text/css" media="all" href="path/to/libs.v1/css/style.css" />
<script type="text/javascript" src="path/to/libs.v1/js/javascripts.js"></script>
<img src="path/to/libs.v1/imgs/logo.png" alt="Logo" />
这对我来说很好..我在add
或change
.v
后的数字上更改某些内容:.v1
,{{1} }}
原因:此技巧使浏览器看到“http://www.mydomain.com/libs/css/style.v1.css”而不是...缓存/浏览器将相信是一个新文件.. .v2
我希望能帮助别人.. 任何建议都将是欢迎