.htaccess - 如何清除浏览器缓存?

时间:2013-07-18 20:45:07

标签: php html .htaccess caching mod-rewrite

我在浏览器缓存方面遇到了一些问题。当css, js, image文件更改内容但不更改名称时,我们必须发送到浏览器下载新文件并丢弃缓存文件。

只需按F5或类似的内容即可更新新文件。

方式 强制浏览器忘记缓存并下载新版本的文件?

1 个答案:

答案 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" />

这对我来说很好..我在addchange .v后的数字上更改某些内容:.v1,{{1} }}

原因:此技巧使浏览器看到“http://www.mydomain.com/libs/css/style.v1.css”而不是...缓存/浏览器将相信是一个新文件.. .v2

我希望能帮助别人.. 任何建议都将是欢迎