|
|
1
2
最好使用文件的最后修改时间戳。这样就避免了版本号带来的问题。您还必须在每次请求时都转到磁盘以获取最新的修订号(如果使用此方法,请使用缓存),或者在部署时在“编译”步骤中更改include语句。
而且,如果你这样做了
有一个项目已经解决了这个问题,我用自己的努力取得了巨大的成功: django-compress . 你告诉它你想如何压缩你的javascript和css,然后它会缩小/压缩,把它们合并成一个大文件,并给这个大文件一个包含时间戳的特殊文件名。当包含知道要包含哪个文件的文件时,还可以使用模板标记。 Django 1.3还将包括一个名为 staticfiles 这有助于为静态媒体提供服务,但不能解决版本控制问题。 |
|
|
2
0
我过去使用的一种技术是确保使用模板标记 每一个 静态资产引用。然后我可以根据需要更改该标记,如果我需要更改资产目录的URL,也可以根据需要添加缓存。 即使文件没有更改,我也不会担心为每个SVN修订版强制执行不必要的获取操作—它仍然比每次提供新的文件更有效。 有各种各样的图书馆为你做这种事情。knutin已经提到了django compress,还有 django-static-management , django-static 可能还有很多其他的。除了处理缓存破坏之外,这些应用程序通常还包括某种压缩/连接,以便将多个CSS或JS文件连接成一个文件,以减少HTTP请求。 |
|
|
user7898461 · 以编程方式禁用特定资源的缓存 8 年前 |
|
|
txid · 如何缓存通过PHP返回的脚本 8 年前 |
|
|
Lambda killed App · 利用浏览器缓存处理静态文件 8 年前 |
|
|
Nitneq · 删除缓存Wordpress 8 年前 |
|
|
Chris Dovetail · 缓存访问控制允许原点值跨站点 8 年前 |