我正在與靜態文件和更新問題的一些通用的解決方案,它Django的靜態文件版本
例如:可以說有網站與/static/styles.css文件 - 和網站用於很長一段時間 - 所以很多遊客在瀏覽器
在此css文件現在我們做的改變,並在服務器上更新緩存的這個文件,但一些用戶仍然有舊版本(儘管服務器返回的修改日期)
顯而易見的解決方案 - 將一些版本添加到文件/static/styles.css?v=1.1
但在這種情況下,開發人員必須跟蹤這個文件的更改和手動增加版本
解決方案2 - 計算文件的MD5哈希並添加到URL /static/styels.css/?v={mdp5hashvalue}
看起來好多了,但是MD5應計算一些如何自動..
他們可能的方式我看到它 - 創建一些模板標籤這樣
{% static_file "style.css" %}
這會使
<link src="/static/style.css?v=md5hash">
,但我不希望這個標記來計算每個頁面加載MD5,我不希望存儲在Django緩存哈希,因爲那時我們會有更新文件後清除..
有什麼想法?
已經有很多針對這個問題的解決方案,從那裏開始例如。 http://djangopackages.com/grids/g/static-builders/正如@ChrisPratt所示! – Stefano 2012-02-05 23:00:28