Могу ли я запустить 2 проекта django на двух доменах, но на одном ip?

Я пытаюсь запустить два проекта django с помощью nginx, используя эти две конфигурации:

upstream django {
    server unix:///home/hypebeeruser/HypeBeer/HypeBeerProject/HypeBeerProject.sock;
}

# configuration of the server
server {
    server_name hypebeer.com.ua;
    charset     utf-8;
    # max upload size
    client_max_body_size 75M;
    # Django media and static files
    location /media  {
        alias /home/hypebeeruser/HypeBeer/HypeBeerProject/media;
    }
    location /static {
        alias /home/hypebeeruser/HypeBeer/HypeBeerProject/static;
    }
    # Send all non-media requests to the Django server.
    location / {
        uwsgi_pass  django;
        include     /home/hypebeeruser/HypeBeer/HypeBeerProject/uwsgi_params;
    }
}
# the upstream component nginx needs to connect to
upstream django_tobabox {
    server unix:///home/tobabox/TobaBox/TobaBox/TobaBox.sock;
}
# configuration of the server
server {
    listen      80;
    server_name tobabox.com www.tobabox.com;
    charset     utf-8;
    # max upload size
    client_max_body_size 75M;
    # Django media and static files
    location /media  {
        alias /home/tobabox/TobaBox/TobaBox/media;
    }
    location /static {
        alias /home/tobabox/TobaBox/TobaBox/static;
    }
    # Send all non-media requests to the Django server.
    location / {
        uwsgi_pass  django_tobabox;
        include     /home/tobabox/TobaBox/TobaBox/uwsgi_params;
    }
}

Я запускаю uwsgi --socket HypeBeerProject.sock --module HypeBeerProject.wsgi --chmod-socket=666, и он запускает мой первый сайт, но второй не работает с той же командой (да, я изменил имена .sock и project.wsgi). Он работает нормально, без ошибок, но я все еще не могу подключиться через доменное имя.
Нужно ли мне покупать дополнительный IP или я могу как-то настроить его так, чтобы на одном IP было два сайта и два домена?

Вы можете запустить несколько доменов на одном IP. В Apache для этого используется директива VirtualHost. В nginx они называются серверными блоками. Похоже, что вы уже прошли большую часть пути, но у Digital Ocean есть хороший учебник: https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-server-blocks-virtual-hosts-on-ubuntu-16-04

Вы уверены, что записи A в вашем DNS правильно указывают на один IP-адрес для обоих доменов, которые вы пытаетесь разместить?

Вернуться на верх