强制静态文件永远不会缓存

时间:2014-09-28 19:49:28

标签: django apache

我在Apache上提供了一个Django应用程序,在我最近的部署之后,我注意到很多用户正在为主HTML文件的新版本提供服务,但他们仍然在挑选旧的JS文件来自他们的缓存。

我试过像patch_cache_control(response, no_cache=True, no_store=True, must_revalidate=True)这样的东西,但这似乎不适用于静态文件。

有没有办法在访问页面时始终强制从服务器重新获取每个静态?

1 个答案:

答案 0 :(得分:0)

你可以用标题做很多事情。

或者您可以使用类似{% static 'js/jquery.js' %}?v={{ settings.CURRENT_VERSION }}的内容,这样浏览器会认为您使用的是全新文件,因为该文件的名称类似于jquery.js?v=1。我不会真的建议这样做,但这是一个非常快的黑客。