@
alittlecode 我以前跑我的项目的时候报的错就是和你的一样 upstream prematurely closed connection while reading response header from upstream 我是用 supervisord 管理 uwsig 进程坑一
如果通过 supervisor 来管理 uwsgi,那么需要注意选项 daemonize 和 log-maxsize 就不要再配置了,不然就会报错"FATAL FAIL"啥的错误。
坑二
如果完成了 nginx+uwsgi+django 的配置,但是有时候访问有的页面(注意是有的页面)会提示 502 bad gateway 查看 nginx 的日志是这样的一行:Upstream prematurely closed connection while reading upstream...
出现这种情况可能是 django 处理请求时间很长,导致请求还没发出去,就被干掉了,这个时候可以调整 harakiri 或者 socket-timeout 参数的值,我自己现在的博客项目之前遇到就是这样就解决的。
坑三
如果没有设置 log-maxsize,则会出现 supervisor 管理当前项目的日志只会输出到 err.log 里面
后续如果踩到新坑会再添加到该页的,当时我的 uwsi 进程开了守护日志,就不行,看了 nginx 日志和你的一样,我直接关闭 uwsgi 的守护日志就可以了。。