Рейтинг:0

nginx в Debian Buster: как правильно обращаться с конфигурационными файлами?

флаг ps

Nginx можно настроить с помощью различных файлов конфигурации:

  • *.конф-Файлы внутри /etc/ngninx/conf.d
  • *.конф-Файлы внутри /etc/nginx/сайты-доступны
  • Последний, но тем не менее важный: /etc/nginx/доступные сайты/по умолчанию

Может ли кто-нибудь пролить свет на то, когда правильно использовать какой файл для какого сценария приложения? В документации говорится только о том, как должны выглядеть файлы конфигурации, но не о том, как их хранить.

флаг sv
Я настроил Debian Buster пару дней назад в Google Cloud. Я не нахожу `/etc/nginx/sites-available` по умолчанию. Мой `/etc/nginx/nginx.conf` включает только `/etc/nginx/conf.d/*.conf;`. Пожалуйста, опубликуйте свою конфигурацию, используя вывод `nginx -T`. Спасибо.
флаг us
Скорее всего, вы не использовали пакетную версию nginx для Debian, потому что она определенно имеет механизм `sites-available`/`sites-enabled`.
флаг sv
Вероятно, Google изменил настройки по умолчанию в Debian, как и в большинстве других программ и ОС на своей платформе.
Рейтинг:0
флаг in

Если вас не интересуют лучшие практики, вы можете взглянуть на nginx.conf и посмотреть, какой каталог включен. Вероятно, это будет nginx/conf.d/*.conf, так что вы можете хранить там свои конфиги и они будут работать после перезапуска (или перезагрузки) сервиса nginx.

Однако я постараюсь ответить просто стандартным подходом nginx, независимо от дистрибутива:

nginx поставляется с файлом nginx.conf внутри /etc/nginx. Там у вас есть блок, который говорит nginx читать дополнительные файлы .conf из каталога conf.d.

*.conf-файлы внутри /etc/ngninx/conf.d Это каталог по умолчанию, который nginx создает после установки. Он используется для хранения конфигураций виртуального хоста в формате *.conf. Однако это не лучший подход.

*.conf-файлы внутри /etc/nginx/сайты-доступны Более элегантный подход — разместить файл .conf вашего виртуального хоста на сайтах.

*.conf-файлы внутри /etc/nginx/сайты включены Здесь вы должны символически связать виртуальные хосты с доступных сайтов, чтобы nginx мог их читать и работать с ними.

Чтобы этот подход работал, вам нужно отредактировать nginx.conf и заставить его обслуживать файлы conf из сайты с поддержкой. После этого, чтобы добавить новый vhost в nginx, достаточно создать симлинк.

ln -s /etc/nginx/sites-available/mycoolsite.conf /etc/nginx/sites-enabled/mycoolsite.conf

Перезапустите nginx и все готово. mycoolsite теперь будет обслуживаться nginx

перезапуск службы nginx
Michael Hampton avatar
флаг cz
Обратите внимание, что доступность сайтов/включение сайтов не является стандартным подходом nginx. Это специфичный для Debian подход (сомнительная полезность в наши дни).

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.