Search code examples
djangoamazon-web-servicesuwsgi

more than one site ERROR Django uwsgi config problem


I am trying to run multiple websites with Django nginx and uwsgi services. Can you help? django project install aws ec2 amazon.using 80 port runing no problem bu using 81 port Error :502 Bad Gateway nginx/1.14.0 (Ubuntu)

ngix settings :

upstream app_a {
    server unix:///home/ubuntu/gym/gym.sock;
}
upstream app_b {
    server unix:///home/ubuntu/DemoGym/DemoGym.sock;
}

server {
    listen 80;
    server_name ...163;
    charset utf-8;
    client_max_body_size 20M;
    uwsgi_read_timeout 6000;
    uwsgi_send_timeout 6000;
    uwsgi_connect_timeout 6000;
    keepalive_timeout 6000;
location / {
        include /etc/nginx/uwsgi_params;
        uwsgi_pass app_a;
        root /home/ubuntu/gym;
    }
location /static/  {
        alias /home/ubuntu/gym/crm/static/;
    }
location /media/  {
        alias /home/ubuntu/gym/media/;
    }
}
server {
    listen 81;
    server_name ...163;
    charset utf-8;
    client_max_body_size 20M;
    uwsgi_read_timeout 6000;
    uwsgi_send_timeout 6000;
    uwsgi_connect_timeout 6000;
    keepalive_timeout 6000;
location / {
        include /etc/nginx/uwsgi_params;
        uwsgi_pass app_b;
        root /home/ubuntu/DemoGym;
    }
location /static/  {
        alias /home/ubuntu/DemoGym/crm/static/;
    }
location /media/  {
        alias /home/ubuntu/DemoGym/media/;
    }
}

uwsgi settings :

[uwsgi]
plugins=python3
chdir=/home/ubuntu/gym/
home=/home/ubuntu/env/
module=mdsite.wsgi:application
master=True
gid=ubuntu
uid=ubuntu
socket=/home/ubuntu/gym/gym.sock
touch-reload=/home/ubuntu/.reload
chmod-socket=666
chown-socket=ubuntu
vacuum=True
env LANG="en-US.utf8"
env LC_ALL="en-US.UTF-8"
env LC_LANG="en-US.UTF-8"

Error :502 Bad Gateway nginx/1.14.0 (Ubuntu)


Solution

  • uwsgi configuration should be put under all applications.

    Your opened command :

    sudo ln -s /home/ubuntu/project_a/app_a.ini /etc/uwsgi/apps-enabled/ 
    

    in using Ubuntu