我收到 502 错误,并且在错误日志 [错误] 18959#18959:*1 连接() 失败(111:连接被拒绝)时连接到上游.......
upstream django {
server 127.0.0.1:7000;
}
server {
listen 80;
server_name ec2-instance-address.us-west-2.compute.amazonaws.com;
access_log /srv/project/logs/access-nginx.log;
error_log /srv/project/logs/error-nginx.log;
location / {
uwsgi_pass django;
include /srv/project/conf/envs/stage/uwsgi/params;
}
location /static/ {
root /srv/project/;
index index.html index.htm;
}
location /media/ {
root /srv/project/;
index index.html index.htm;
}
location ~ ^/favicon.(w*)$ {
alias /srv/book-stage/static/favicon.$1;
}
}
UWSGi.ini项目的文件。
mysite_uwsgi.ini文件
[uwsgi]
socket = :7000
chmod-socket = 666
uid = nginx
gid = nginx
master = true
enable-threads = true
processes = 2
virtualenv = /srv/project
chdir = /srv/project
pythonpath = /srv/project
module = conf.wsgi
pidfile = /srv/project/uwsgi/stage.pid
daemonize = /srv/project/logs/uwsgi.log
touch-reload = /srv/project/uwsgi/touch.py
vacuum = true
log-format = %(addr) - %(user) [%(ltime)] "%(method) %(uri) %(proto)" %(status) %(size) "%(referer)" "%(uagent)"
uwsgi --ini /srv/project/conf/envs/stage/uwsgi/stage.ini
之后 nginx 错误.log已更新为新错误
[error]: *1 upstream prematurely closed connection while reading response header from upstream
在将unix:///tmp/project.sock
添加到nginx配置的流部分并通过socket = /tmp/project.sock
到uwsgi后重新启动nginx并通过uwsgi --ini mysite_uwsgi.ini
来启动uwsgi.ini文件为我解决了这个问题。