我在Apache上提供了一个Django应用程序,在我最近的部署之后,我注意到很多用户正在为主HTML文件的新版本提供服务,但他们仍然在挑选旧的JS文件来自他们的缓存。
我试过像patch_cache_control(response, no_cache=True, no_store=True, must_revalidate=True)
这样的东西,但这似乎不适用于静态文件。
有没有办法在访问页面时始终强制从服务器重新获取每个静态?
答案 0 :(得分:0)
你可以用标题做很多事情。
或者您可以使用类似{% static 'js/jquery.js' %}?v={{ settings.CURRENT_VERSION }}
的内容,这样浏览器会认为您使用的是全新文件,因为该文件的名称类似于jquery.js?v=1
。我不会真的建议这样做,但这是一个非常快的黑客。