Nginx default host http-https (vestacp)

Опубликовано: 11 марта 2019 в 01:22

Началось все с проблем отображения favicon в поисковой выдачи. У части сайтов начали отображаться favicon «соседних» сайтов. Но что еще хуже, некоторые сайты которые не имели ssl версий, стали получать в индексы страницы «соседних».

Управление сайтами было возложено на панель VestaCP, которая в базовой конфигурации не имеет настроек обработки доменов которых нет, она попросту ссылается на первый конфигурационный файл указанный в vesta.conf.

Такое положение дел явно не устраивало. Первым делом в документации nginx почитали как обрабатываются запросы и узнали, что есть специальный параметр default(до версии 0.8.2) и default_server(для версий выше). Данный параметр используется в секции server. Ниже приводится пример конфигурационного файла для обработки запросов по умолчанию, то есть тех, которые к нам поступили, но сервер не нашел под них подходящих виртуальных хостов. Данный конфигурационный файл назовем 00-default-host.conf, который будет размещаться в корне каталога конфигурации nginx(/etc/nginx)

Данная конфигурация имеет специальный код возврата, который сообщает браузеру, что соединение сброшено. При желании сюда можно добавить что угодно. Для того чтоб это взлетело нам необходимо создать само-подписной сертификат. Делается это следующей командой:

Теперь необходимо добавить соответствующий include в основном фале конфигурации nginx.conf, почти в самом конце файла:

Ну вот и все, теперь остается только перезапустить сервер nginx и все должно встать на свои места.

Поделиться

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

(Required)