我尝试了这个堆栈:nginx + uwsgi + django + postgresql,请求可以到达 django 的视图,客户端显示500 server internal fault
,我检查 postgres 日志,发现错误could not receive data from client: Connection reset by peer
。如何调试?
答案1
我找到了原因,在我的 uwsgi 配置文件中,我设置了thread = 2
,将其更改为master = true
和之后processes = 4
,现在运行良好。
那么,如何调试呢?我用 Google 搜索错误,这告诉我这不是postgresql的错误,客户端应用程序断开了与数据库的连接,在此堆栈上:nignx <-> uwsgi <-> django <-> postgresql
,所以原因可能隐藏在nginx,uwsgi或djagno中,我检查了nginx日志和uwsgi日志,没有记录任何错误。我的朋友建议我使用pycharm远程调试django,我确实在部署服务器中调试了django,django没问题。然后我检查了uwsgi的配置,发现了一个新手的错误......