我的Django项目在本地运行良好,但是一旦我要部署到Heroku,我就将这段代码包含在我的settings.py
文件中:
ENV_TYPE = os.environ.get('ENV_TYPE')
if ENV_TYPE == "HEROKU":
DEBUG = False
现在,当我在本地运行python manage.py runserver
时,会在浏览器中看到一个Server Error (500)
。但是,一旦我将DEBUG
更改为True
,一切都会很好。
可能是什么问题?
请注意,我设置了DEBUG = True
,但是仍然无法查看错误日志。它显示白色屏幕,顶部是Server Error (500)
。
答案 0 :(得分:0)
在我的项目中(在另一个分支中)玩转之后,我终于能够解决此问题。
由于在浏览器中没有收到Server Error (500)
之外的任何错误消息,因此我通过在500.html
文件夹的根目录中添加自定义的templates
来更改默认的500错误页面。直到那时我才能够看到项目的实际错误。
我在终端中看到的错误是ValueError: Missing staticfiles manifest entry for 'pages/img/favicon.ico'
。我使用命令python manage.py collectstatic --clear
解决了这个问题。 (请参见Django docs中的更多详细信息)
我再次运行服务器,一切正常。