NginX использует неправильный файл конфигурации

У меня есть веб-сервер с NginX и каждый веб-сайт в разных файлах конфигурации. Я заметил, если у меня есть конфигурация сайта, которая больше не существует (без DNS-имени или неправильных настроек), NginX просто перенаправляет меня на один из других моих сайтов. Всегда к тому же, а не случайно. Как это работает? Как NginX решает, куда перенаправить меня, если конфигурация, которую он должен обслуживать, неверна?

Простой пример: если я ввожу IP-адрес сервера в браузер, я получаю эту конкретную страницу загруженной. OFC Я не знаю ' t установить любую из конфигураций для обслуживания IP-адреса. Вы знаете, как я могу изменить NginX для обслуживания чего-то другого или, может быть, сбросить ошибку? Ах да, об этом

Если я перейду на свой IP-адрес, ни один из файлов журнала не будет ничего записывать. Хотя очевидно, что загружается один сайт.

0
задан 12 April 2017 в 11:51
2 ответа

Это потому, что Nginx по умолчанию использует первый веб-сайт. Вы можете выбрать тот, который будет использоваться по умолчанию, с помощью директивы default_server .

Я не хочу, чтобы Nginx отвечал ни на одно доменное имя, поэтому я делаю это, чтобы отправить без ответа .

# This just prevents Nginx picking a random default server if it doesn't know which
# server block to send a request to
server {
    listen      80 default_server;
    server_name _;
    return      444; # This means "go away", effectively
}
2
ответ дан 4 December 2019 в 12:20

Если нет блока server с подходящим server_name , запрос будет отправлен на сервер с оператором default_server в его директиве Listen или определен первый блок server (обычно первый в алфавите при чтении нескольких файлов конфигурации из каталога ).

См. http://nginx.org/en/docs/http/request_processing.html и http://nginx.org/en/docs/http/server_names.htm

1
ответ дан 4 December 2019 в 12:20

Теги

Похожие вопросы