0

在生产中部署 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',
    # [..]
)

那么,冻结预编译和压缩以便在生产中部署它们的最正确方法是什么?谢谢

4

2 回答 2

0

除了上述评论,也许值得一看

https://github.com/jezdez/django_compressor

希望这可以帮助。

于 2012-11-19T15:42:42.783 回答
0

我猜您正在寻找一种在部署之前在您的开发机器上压缩文件的方法:

./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
于 2012-11-19T15:46:48.710 回答