我使用staticfiles
在我的Django应用程序中管理静态文件(JS,CSS,图像等)。这很好用,但我想在用户的浏览器能够启动时dynamically serving pre-compressed sources。
我浏览了链接教程,并且在生产中(在Apache上)这很好用。我可以使用
包含文件<script src="/static/js/my-site"></script>
并且当支持GZip编码时,它将在旧浏览器和my-site.js
中加载my-site.js.gz
。大!但是:这会使用runserver
打破本地开发。当然,staticfiles
默认视图不知道如何将/js/my-site
转换为/js/my-site.js
(或.gz
)。要使runserver
正常工作,我需要指定扩展,这会破坏内容协商。
是否有更好的方法来配置Apache,以便我可以始终请求.js
(或.css
等)并透明地获得压缩版本?或者我可以告诉Django如何在不指定扩展名的情况下找到所请求的资源?我不认为我是唯一一个试图这样做的人......
答案 0 :(得分:1)
没有简单的解决方案。主要是因为你正在使用专为apache web服务器设计的东西(afaik)。
我认为有3个解决方案:
(我正在使用选项4 :))