你如何调试无响应的Django?

时间:2015-07-07 13:38:14

标签: python django debugging

我正在学习如何使用git部署Django站点。 我有开发,登台和生产环境。所有这些都在我的笔记本电脑上。

操作系统和服务器:Ubuntu 14.04,gunicorn,nginx。

Dev env位于/ webapps / mysite-dev /中。 staging env位于/ webapps / mysite-staging /中。 生产环境在/ webapps / mysite-production /中。 我还有3个单独的用户,上面的目录是这些用户的主目录。

在开发环境中,我的网站工作得很好。两者都使用Django的开发服务器和gunicorn。

来自开发环境:git push staging staging

接收后挂钩使迁移可以修改文件中特定于环境的信息。

然后我启动开发服务器python manage.py runserver

它开始正常。没有错误。

然后我尝试加载http://127.0.0.1:8000,但我网站的主页无法加载,加载是无穷无尽的。

top表明python进程占用了50%到80%的CPU。

python process takes around 50% of CPU

我使用 Ctrl + C 停止服务器,但python进程没有进行,所以我必须杀死它。使用gunicorn时也是如此。

它看起来像一个无限循环,但我不知道bug可能在哪里。

我尝试将pdb.set_trace()和简单return HttpResponse("Hello world")放在主页视图的第一行。没有。似乎对程序的控制根本没有得到视图。

我的问题:如果在终端或浏览器中都没有错误消息,您如何调试Django?

1 个答案:

答案 0 :(得分:0)

看起来您的浏览器未触发开发服务器。也许尝试将django开发服务器绑定到特定端口python manage.py runserver 0.0.0.0:8000并尝试从http://127.0.0.1:8000访问您的网站