Замініть конфігурацію http nginx за замовчуванням без зміни типових nginx.conf


14

Мій намір : я хотів би змінити конфігурацію за замовчуванням, визначену в /etc/nginx/nginx.conf(у debian 8). Ідея полягає в тому, щоб цей файл був повністю не торканим, щоб полегшити майбутні оновлення системи та мати можливість отримати останні зміни для параметрів, які я не переосмислював.

Що я зробив : я створив власну конфігурацію так /etc/nginx/conf.d/само, як і для кількох інших служб debian.

Проблема : Однак, здається, неможливо перекрити деяку конфігурацію, тому що я отримую директиву "X" - це дублікат помилки. Схоже, Nginx не підтримує конфігурацію, що перекриває так, як це роблять інші служби.

Питання : Чи є спосіб змінити та додати нову опцію в контекст http nginx, не отримуючи директиву, що є дублюючою помилкою? Або я повинен повністю відмовитись від ідеї і розгулу nginx.conf?

Велике спасибі за вашу допомогу.

Це подібне питання насправді не вирішує мою проблему, оскільки я також хочу отримати прибуток від параметрів за замовчуванням, встановлених автоматично для мене (наприклад worker_processes auto;)


1
Ви дійсно налаштовані на використання Debian? Їх конфігурація nginx зовсім інша, ніж у потоці, і це може бути неможливим.
Майкл Хемптон

Так. У мене на Debian є вже кілька виробничих серверів, і це стосується лише зміни apache2 на nginx. Отже, що ти мені кажеш, що в інших дистрибуціях те, що я намагався, може працювати? Чи є ймовірність, що в майбутньому це буде працювати з Debian?
Гі-Дон

Звичайно, можливо , в майбутньому Debian поставить більш розумну конфігурацію nginx. Ви також можете просто створити свій власний.
Майкл Хемптон

Відповіді:


2

Або я повинен повністю відмовитись від ідеї та сказувати nginx.conf?

Так, слід.

Єдині зміни, які коли-небудь вносяться обслуговувачами пакетів, - це будь-які

  • Більш розумні за замовчуванням параметри, у будь-якому випадку, ви повинні налаштувати себе довгий час тому
  • #- попередньо встановлені приклади, які без вашої дії все одно не використовуються

У минулому, тільки значні зміни були ssl_protocols, ssl_prefer_server_ciphersі worker_processes. Ви, мабуть, повинні були переосмислити ці роки, перш ніж їх встановити в пакет дебютів, здавалося б, розумною справою для користувачів, які підтримують пакет.

У минулому єдине реальне пом'якшення, яке могло бути поставлене за допомогою системи nginx.conf, що додається max_ranges 1;для CVE-2017-7529, не надсилалось жодним дистрибутивом, про який я знаю, вони випустили виправлення для його вразливості перед більшістю адміністраторів навіть застосували пом’якшення.

Ви не можете розраховувати, що технічне обслуговування пакетів буде швидшим, ніж ви додаєте потенційно можливі порушення, таким чином, ви, ймовірно, не отримаєте прибуток від успадкування їх конфігурації. Обслуговувачі упаковок не можуть знати, що найкраще для мільйонів випадків використання там, і тому буде надзвичайно консервативним у зміні цінностей тут.

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


Як ви зрозумієте, які зміни застосовані між різними випусками? Ви можете порівняти всі (неперевірені, незахищено завантажені) доступні версії пакету, як це:

(cd "$(mktemp -d)"; rmadison --url=debian nginx-common | awk '{print $3}' | while read a; do curl "http://ftp.debian.org/debian/pool/main/n/nginx/nginx-common_${a}_all.deb" | dpkg -x - x${a}; done; for a in x*/etc/nginx/nginx.conf; do [ -z "$la" ] && la="$a" && continue; diff -wus "$la" "$a";la="$a" ; done; pwd)

Історія справді приносить цінну інформацію в цьому випадку, тому дякую за цю дуже гарну відповідь. Я розумію вашу думку, враховуючи важливість nginx у всьому світі, це вкрай неможливо, коли протягом моїх серверів HTTP відбудуться важливі зміни.
Гі-Дон

1
Я не згоден з цим. Хоча малоймовірно, що проблеми будуть виникати через зміни обслуговуючого персоналу, наявність окремої конфігурації допоможе зменшити витрати на обслуговування, а також покращить структуру та простішу міграцію на інший сервер, якщо виникне потреба.
xZero

1
@xZero Ви хочете сказати, що копіювання файлу в інше місце допоможе зменшити витрати на обслуговування? Якщо так, то як?
anx
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.