|      1jsonline      2014-09-15 09:36:43 +08:00 via Android 1.   a.js?t=20140915 2. a.js -> 47A246-a.js | 
|      2jsonline      2014-09-15 09:37:22 +08:00 via Android 3 去掉 last modified | 
|  |      3B33A91OoN0SXv9xX      2014-09-15 09:38:45 +08:00 Internet选项,常规,浏览历史,设置,每次访问网页时刷新 是这个意思吗? | 
|      5FreeBSD OP @wanglongbiao2010 对手动清除是这个意思。但用户不希望每次升级版本都手动清除。 | 
|      7jsonline      2014-09-15 09:53:58 +08:00 via Android 你首先要弄清楚浏览器会缓存哪些文件。 你使用方法1就行了,在更新的文件后面加时间戳。 手机,详细不了。 | 
|  |      8daxingplay      2014-09-15 10:51:14 +08:00 淘宝用的是版本号,比如x.x.x/xxx.js这种 | 
|  |      9oott123      2014-09-15 11:08:26 +08:00 via Android verhash 吧。 在引用前端文件的时候就要加上版本号,你可以选择后端渲染的时候函数、改模板文件,改 gulpfile/gruntfile 来实现。 | 
|  |      10qsun      2014-09-15 11:14:48 +08:00 这是我们的 ``` class Assets { /* For static file */ public static function url($asset_filename) { if (App::environment('local', 'testing')) { return $asset_filename; } else { return Config::get('app.cdn_url') . '/assets/' . md5(file_get_contents(app_path() . '/../public/' . $asset_filename)) . $asset_filename; } } } ``` 生成的话会这样的URL http://static.haifanghui.com/assets/4a5c1dc6d1c0b45b96bdff0a38860bbf/build/all.min.css | 
|  |      11Phariel      2014-09-15 11:36:07 +08:00 via Android  1 x.x.x/built.js built.js?version=x.x.x 第一种好一些,grunt做起来方便 | 
|  |      14imn1      2014-09-15 12:06:31 +08:00 解决方案楼上都写了,我就不再重复了 http://bbs.kafan.cn/forum.php?mod=viewthread&tid=1744552&extra=page%3D3%26filter%3Dtypeid%26typeid%3D720 我在卡饭写的东西,里面写了网页reload/refresh的几种方式区别,和一个扩展(修改) 可以自己再google进一步了解header和浏览器缓存的关系,可以在后台发送header控制浏览器缓存 这个对于做前端的你可能比较困难,一般除非项目把js/css也纳入版本控制,否则后台都不管这事,权当涨姿势吧 | 
|  |      15cxe2v      2014-09-15 12:42:55 +08:00 一楼是常见的方法之一,之前研究一个网站的时候就发现这个方法了,当时还不明白怎么回事 | 
|  |      16cougar      2014-09-15 13:12:21 +08:00 参数版本号最简单 | 
|  |      17jevonszmx      2014-09-15 13:17:59 +08:00 最简单就是时间戳,每次静态文件改动,前台html中时间戳变一下就好了 | 
|  |      18tinyhill      2014-09-15 19:09:31 +08:00 两种策略: 1. 时间戳或版本参数,如 aaa/xxx.css?t=20140915.css 2. 时间戳或版本目录,如 aaa/20140915/xxx.css |