您好,匿名用户
随意问技术百科期待您的加入

有哪些比较好的管理网站静态文件版本的方案?

0 投票
<link rel="stylesheet" media="all" href="http://sfault.com/css/style.css?11.12.22.1">

可能标题表达的不够正确,正如上面代码所指的那样,为了修改用户本地的缓存文件,使用了修改请求地址的方法。可能是增加一个版本号,也可能使用一个时间戳。

我现在的情况是这样:
静态文件的发布和网站动态文件的发布是分开的,静态文件上传到CDN后,就直接把相应地址提供给后端开发人员,他们不关心静态文件放在哪里,文件什么版本。

如果静态文件有修改,前端人员会处理好后直接上传CDN(比较频繁),我们现在还没有一个方案来解决修改动态文件里的链接地址,除非手动去修改动态文件里的内容,让动态文件也去发布一下(动态文件的发布比较繁琐)。

可能有朋友想增加统一的配置信息,但这样有个问题,不能针对某个文件单独处理。

所以想咨询一下大家有没有比较好的方案来解决这个问题,是依赖完善的CMS呢,还是有什么工具可以完成这个工作?

谢谢!

用户头像 提问 2012年 12月1日 @ Kog'Maw 上等兵 (212 威望)
分享到:

1个回答

0 投票

现在用的 tornado 框架里有个的 static_url() 专门用来引用静态文件

<link href="{{ static_url('css/bootstrap.css') }}" rel="stylesheet">

它通过 get_version() 建立一个列表来存储静态文件的 md5_hash 前5位并当作签名来生成引用地址

<link href="css/bootstrap.css?v=1db64" rel="stylesheet">

当代码更新后(这里需要手动或者自动 reload 一次)检测到文件有改动, hash值就更新成了新的

<link href="css/bootstrap.css?v=d8964" rel="stylesheet">
用户头像 回复 2012年 12月1日 @ Apple 上等兵 (542 威望)
提一个问题:

相关问题

0 投票
1 回复 2 阅读
0 投票
1 回复 36 阅读
0 投票
1 回复 27 阅读
0 投票
1 回复 70 阅读
用户头像 提问 2012年 12月1日 @ Tristana 上等兵 (285 威望)
+1 投票
1 回复 59 阅读
用户头像 提问 2012年 12月1日 @ Fizz 上等兵 (325 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...