我的液滴一键django server reppspons 502不良网关错误。
这是nginx error.log2018/02/14 06:09:09 [错误] 1486#1486: *3960 connect((to Unix:/home/django/gunicorn.socket.socket失败(111:连接拒绝(,同时连接到上游,客户:60.191.191.38.77,服务器:_,re $2018/02/14 06:12:09 [错误] 1493#1493: *1 connect((to unix:/home/django/gunicorn.socket.socket失败(111:连接拒绝(,同时连接到上游,客户端:31.226.226.2333,服务器:_,要求$
这是gunicorn.conf
说明" gunicorn应用程序服务器处理django_project"
启动runlevel [2345]停在Runlevel [!2345]
上重生setuid用户setgid www-datachdir/home/user/django_project
执行myprojectenv/bin/gunicorn - 工人3 - 键unix:/home/user/myproject/myproject.sock myproject.wsgi:application
首先,您需要编辑所有这些配置文件才能工作,并且需要给予读取和写入或执行文件
$ touch gunicorn_start
$ sudo touch /etc/systemd/system/gunicorn.service
$ nano gunicorn_start
在这里,我们将放置我们的配置文件,该文件将在我们的服务中使用
#!/bin/bash
NAME="djproject"
DJANGODIR=/path/to
USER=root
GROUP=root or whatever the user used
WORKERS=3
BIND=unix:/path/to/gunicorn.sock
DJANGO_SETTINGS_MODULE=mailqueue.settings
DJANGO_WSGI_MODULE=mailqueue.wsgi
LOGLEVEL=error
cd $DJANGODIR
source /path/to/venv/bin/activate
cd djangoproject
export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE
export PYTHONPATH=$PROJECTDIR:$PYTHONPATH
exec /path/to/venv/bin/gunicorn ${DJANGO_WSGI_MODULE}:application
--name $NAME
--workers $WORKERS
--user=$USER
--group=$GROUP
--bind=$BIND
--log-level=$LOGLEVEL
--log-file=-
使文件可执行
$ chmod u+x gunicorn_start
现在我们需要编辑服务文件以优雅地重新启动
$ sudo echo "
[Unit]
Description=gunicorn daemon
After=network.target
[Service]
User=root # or your user
Group=root # or your grp
WorkingDirectory=/your-project-path/
ExecStart=/path/to/gunicorn_start
[Install]
WantedBy=multi-user.target
" > /etc/systemd/system/gunicorn.service
最后
检查$ ls /etc/nginx/conf.d/
的NGINX配置如果找到任何*.conf
文件(如果不是(,touch proj.conf
$ sudo echo "
upstream app_server {
server unix:/path/to/gunicorn.sock fail_timeout=0;
}
server {
listen 80;
server_name 10.100.200.10; # <- insert here the ip address/domain name
keepalive_timeout 5;
client_max_body_size 4G;
access_log /var/logs/nginx-access.log;
error_log /var/logs/nginx-error.log;
location /static/ {
alias /path/to/static/;
}
location /media/ {
alias /path/to/media/;
}
location / {
try_files $uri @proxy_to_app;
}
location @proxy_to_app {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://app_server;
}
}
" > /etc/nginx/conf.d/proj.conf;