DEBUG = False

时间:2018-11-02 11:16:08

标签: django divio

我正在Divio Cloud中运行一个网站。我的测试服务器可以很好地处理静态文件,但我的实时服务器可以提供404。当我在实时服务器上将DEBUG切换为True时,它开始可以很好地处理静态文件。

实时服务器启动时,它在日志中具有以下内容:

[uwsgi-static] added mapping for /static/ => /app/static_collected

不是应该正确处理静态文件吗?

-编辑- 更多信息。我实际上没有任何“普通”静态文件。我使用{%static%}添加了一个静态文件,并且可以正常工作!无效的文件是使用django-sass-processor和django-compressor收集的。我在settings.py中:

STATICFILES_FINDERS.extend([
    'compressor.finders.CompressorFinder',
    ])

这不仅会影响文件的收集时间吗?

2 个答案:

答案 0 :(得分:1)

我认为问题很可能是因为您使用的是Django Compressor。使用Django Compressor的方式有多种。

在其文档中,请参阅Offline Compression。这就是在Divio Cloud上运行它所需要的。

答案 1 :(得分:0)

供以后参考:

在Divio环境中,要使基于压缩器的处理器(在本例中为django-sass-processor)正常工作,请在Dockerfile的末尾添加以下内容:

 RUN DJANGO_MODE=build python manage.py compilescss

# <STATIC> 
RUN DJANGO_MODE=build python manage.py collectstatic --noinput
# </STATIC>

# Remove the css files in development environments (in Live they
# are already collected)
RUN DJANGO_MODE=build python manage.py compilescss --delete-files