Конфиг nginx для поддомена

Нужно сделать так чтобы на поддомене:8090 открывался определенный каталог, но при этом чтобы порт 8090 не слушался для основного домена и других поддоменов. Например если домен site.com то http://test.site.com:8090/ нужно обрабатывать и открывать определенный каталог, но не обрабатывать http://site.com:8090/ или http://www.site.com:8090/ Мой конфиг nginx

    server {
    listen       8090;
    server_name  test.site.com;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    root   /var/www;
    index  index.php index.html index.htm;

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

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        fastcgi_index index.php;
        include /etc/nginx/fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }

}

Хоть и server_name указан test.site.com; но если зайти по адресу site.com:8090 то отрабатывает тот же каталог. Как их разграничить?


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

Автор решения: Alexey Ten

Просто определяем серверный блок который будет обрабатывать все запросы и отвечать на них 404.

server {
    listen 8090 default_server;
    return 404;
}
→ Ссылка