在Nginx后面调试Django / Gunicorn

时间:2012-09-06 03:31:16

标签: django debugging nginx gunicorn

Nginx,Gunicorn,Supervisor,New Relic,Django,Postgres等的全新安装。点击URL会产生很大的“内部服务器错误。”

在Nginx配置中打开调试会提供很多详细信息,但没有任何内容指出导致500错误的原因(只是它正在发生。)

接下来,我通过supervisorctl关闭了Gunicorn并通过python manage.py runserver启动了应用程序,点击了URL,一切正常。

退一步,关闭runserver并使用bin/gunicorn_django手动启动Gunicorn,这是我能够访问的最接近的可用跟踪日志:

2012-09-05 21:39:25 [5927] [ERROR] Error handling request
Traceback (most recent call last):
  File "/somewhere/local/lib/python2.7/site-packages/gunicorn/workers/sync.py", line 102, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/somewhere/local/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 241, in __call__
    response = self.get_response(request)
  File "/somewhere/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 82, in get_response
    urlconf = settings.ROOT_URLCONF
  File "/somewhere/local/lib/python2.7/site-packages/django/utils/functional.py", line 185, in inner
    return func(self._wrapped, *args)
AttributeError: 'Settings' object has no attribute 'ROOT_URLCONF'

我不是要求回答这里发生的事情,因为我知道这还不够详细。 ROOT_URLCONF问题是通用的,可能是由许多事情引起的。我的问题是,我可以使用哪些后续步骤继续追踪正在发生的事情?

由于

1 个答案:

答案 0 :(得分:3)

提及Settings而非settings(注意首都)是可疑的。我个人注意到使用Aptana Studio,在输入from django.conf import后出现的其中一个自动填充选项是Settings,但这显然不是您真正想要的。也许类似的事情发生了,你接受了错误的自动完成选择?我在您的项目中搜索Settings(当然是区分大小写),并根据需要将其更改为小写。