Как разместить виртуальный сервера с доменом и без домена nginx

У меня есть два проекта фронт и бек. На фронте spa приложение, а на беке json api.

Оба проекта находятся на одном хосте. Http server - nginx Моя конфигурация nginx выглядит так

worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    large_client_header_buffers 4 16k;
          

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    error_log  /var/log/nginx/gateway_error.log  debug;

    sendfile        on;

    keepalive_timeout  600;


    server {


        listen 80;

        server_name _ ; 
            
        root /var/www/project/public;

        index index.php index.html index.htm;

        charset utf-8;

        server_tokens off;

        location / {
            try_files $uri $uri/ /index.php;
        }

        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }

    server  {
        listen 80;
        server_name front.com

        root /var/www/front/public;

        index index.html index.htm;

        charset utf-8;

        server_tokens off;

        location / {
            try_files $uri $uri/ /index.html;
        }
    }


}

когда я делаю запрос на front.com мне возвращается данные с моего api (потому что он находит ip и вызывает этот проект)

Вопрос можно ли сделать так что бы и фронт (с доменом) и бек (без домена, просто с ip адресом) работали корректно. Когда я делаю запрос на front.com то мне отсылается фронт, а когда просто по ip то вызывался бекенд. Или нужно также домен для бекенда?

Спасибо огромное за оказанное внимание!


Ответы (0 шт):