1
jsonline 2014-09-15 09:36:43 +08:00 via Android
1. a.js?t=20140915
2. a.js -> 47A246-a.js |
2
jsonline 2014-09-15 09:37:22 +08:00 via Android
3 去掉 last modified
|
3
B33A91OoN0SXv9xX 2014-09-15 09:38:45 +08:00
Internet选项,常规,浏览历史,设置,每次访问网页时刷新
是这个意思吗? |
5
FreeBSD OP @wanglongbiao2010 对手动清除是这个意思。但用户不希望每次升级版本都手动清除。
|
7
jsonline 2014-09-15 09:53:58 +08:00 via Android
你首先要弄清楚浏览器会缓存哪些文件。
你使用方法1就行了,在更新的文件后面加时间戳。 手机,详细不了。 |
8
daxingplay 2014-09-15 10:51:14 +08:00
淘宝用的是版本号,比如x.x.x/xxx.js这种
|
9
oott123 2014-09-15 11:08:26 +08:00 via Android
verhash 吧。
在引用前端文件的时候就要加上版本号,你可以选择后端渲染的时候函数、改模板文件,改 gulpfile/gruntfile 来实现。 |
10
qsun 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 |
11
Phariel 2014-09-15 11:36:07 +08:00 via Android 1
x.x.x/built.js
built.js?version=x.x.x 第一种好一些,grunt做起来方便 |
14
imn1 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也纳入版本控制,否则后台都不管这事,权当涨姿势吧 |
15
cxe2v 2014-09-15 12:42:55 +08:00
一楼是常见的方法之一,之前研究一个网站的时候就发现这个方法了,当时还不明白怎么回事
|
16
cougar 2014-09-15 13:12:21 +08:00
参数版本号最简单
|
17
jevonszmx 2014-09-15 13:17:59 +08:00
最简单就是时间戳,每次静态文件改动,前台html中时间戳变一下就好了
|
18
tinyhill 2014-09-15 19:09:31 +08:00
两种策略:
1. 时间戳或版本参数,如 aaa/xxx.css?t=20140915.css 2. 时间戳或版本目录,如 aaa/20140915/xxx.css |