小编典典

为什么 DEBUG=False 设置使我的 django 静态文件访问失败?

all

我正在使用 Django作为我的主力构建一个应用程序。到目前为止一切都很好——指定的数据库设置、配置的静态目录、url、视图等。但是当我想渲染我自己的漂亮和自定义的
404.html 和 500.html 页面时,麻烦就开始了。

我阅读了有关自定义错误处理的文档,并在 UrlsConf 中设置了必要的配置,创建了相应的视图并将 404.html 和 500.html
添加到我的应用程序的模板目录(也在 settings.py 中指定)。

但是文档说you can actually view custom error views until Debug is Off,所以我确实将其关闭以测试我的东西,这就是事情变得疯狂的时候!

我不仅无法查看自定义 404.html(实际上,它会加载,但因为我的错误页面每个都包含一个图形错误消息 -
作为一些漂亮的图像),错误页面的源会加载,但没有其他加载!甚至没有链接 CSS 或 Javascript!

通常,一旦我设置DEBUG = False,所有视图都会加载,但任何链接的内容(CSS、Javascript、图像等)都不会加载!发生了什么?关于静态文件和设置,是否缺少某些DEBUG内容?


阅读 110

收藏
2022-03-16

共1个答案

小编典典

关闭调试后,Django 将不再为您处理静态文件 - 您的生产 Web 服务器(Apache 或其他东西)应该负责处理。

2022-03-16