在生产中部署Django解决方案时,我遇到了压缩和编译静态文件的问题。我让Django在Nginx反向代理下运行,该代理也负责提供静态文件。
找不到某些文件(特别是js和css文件),我注意到这是因为settings.py中的以下设置启用了压缩。
COMPRESS_ENABLED = True
COMPRESS_PRECOMPILERS = (
('text/coffeescript', 'coffee --compile --stdio'),
('text/less', 'lessc {infile} {outfile}'),
)
COMPRESS_JS_FILTERS = [
'compressor.filters.jsmin.JSMinFilter'
]
INSTALLED_APPS = (
# [..]
'compressor',
# [..]
)
那么,为了在生产中部署它们,冻结预编译和压缩的最正确方法是什么?感谢
答案 0 :(得分:0)
除上述评论外,或许值得一看这个
https://github.com/jezdez/django_compressor
希望这有帮助。
答案 1 :(得分:0)
我猜你在部署之前正在寻找一种在dev机器上压缩文件的方法:
./manage.py compress --force
您还应该在设置中设置COMPRESS_OFFLINE:
COMPRESS_OFFLINE = True
if 'compress' in sys.argv:
# compressor related settings when called as management command
TEMPLATE_DEBUG = False
COMPRESS_ENABLED = True