2

我有一个生产 django 应用程序可以正常运行,Debug = True;但不能使用Debug=False.

如果我加载运行域,它会显示我的urls.py文件,这真的很糟糕。

我想将我的应用程序放在它使用的地方Debug=FalseandTEMPLATE_DEBUG=False而不是Debug=Trueand TEMPLATE_DEBUG=True,因为通过使用True它公开应用程序的值

如果我在 nginx 下查看我的error.logDEBUG=True

2013/10/25 11:35:34 [error] 2263#0: *5 connect() failed (111: Connection refused) while connecting to upstream, client: xx.xxx.xx.xxx, server: *.myapp.com, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:8001/", host: "www.myapp.com"

在 nginx 下查看我的access.logDEBUG=True

xx.xxx.xx.xxx - - [25/Oct/2013:11:35:33 +0000] "GET / HTTP/1.1" 502 173 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:24.0) Gecko/20100101 Firefox/24.0"

所以我的问题是,为什么当我设置DEBUG=TrueTEMPLATE_DEBUG=True成功加载并显示应用程序时,以及当我设置DEBUG=FalseTEMPLATE_DEBUG=False显示自定义 http 500 错误页面时?(我创建了处理 http 500 错误)

4

1 回答 1

2

感谢Toad013Dmitry的建议。

看来问题可能与 nginx 和 gunicorn 的启动方式有关,而不是配置问题,因此,我最终使用以下命令来启动我的应用程序:

/usr/local/bin/gunicorn -c /home/ubuntu/virtualenv/gunicorn_config.py myapp.wsgi
sudo nginx -c /etc/nginx/nginx.conf
于 2013-10-25T17:59:17.627 回答