Py学习  »  Django

如果DEBUG=False,为什么Django不加载静态文件?

Shoyeb Sheikh • 5 年前 • 1784 次点击  

我的CSS没有加载,然后我将DEBUG改为True,它就工作了。

调试设置与静态文件有什么关系?不管DEBUG是真是假,它都应该加载静态文件。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/53952
文章 [ 2 ]  |  最新文章 5 年前
ruddra
Reply   •   1 楼
ruddra    6 年前

DEBUG=False 使用( docs )(在生产服务器中不建议这样做):

python manage.py runserver --insecure

另外,你可以使用 whitenoise 提供静态内容。为此,您需要通过 pip install whitenoise ,然后在设置中添加新的中间件,如下所示:

MIDDLEWARE = [
  # 'django.middleware.security.SecurityMiddleware',
  'whitenoise.middleware.WhiteNoiseMiddleware',
  # ...
]

Amadan
Reply   •   2 楼
Amadan    6 年前

在调试模式下,Django将提供所有服务,这样您就不必为Apache/Nginx之类的东西操心了。

在生产模式下,使用Python提供静态内容是浪费资源,Django假设您将设置一个web服务器来提供静态内容。见:

尤其是