web-dev-qa-db-fra.com

Remplacer la configuration HTTP NGinx par défaut sans modification de la valeur par défaut NGINX.CONF

Mon intention : Je voudrais remplacer la configuration par défaut définie dans /etc/nginx/nginx.conf (dans Debian 8). L'idée est de conserver ce fichier complètement intact pour faciliter les futures mises à jour du système et pouvoir obtenir les dernières modifications des options que je n'ai pas remplacées.

Qu'est-ce que j'ai fait : j'ai créé une configuration personnalisée dans le /etc/nginx/conf.d/ De la même manière que j'ai faite pour plusieurs autres services Debian.

problème : Cependant, il semble impossible de remplacer une certaine configuration, car je reçois une directive A "x" est dupliquer erreur . Nginx ne semble pas que le support de la configuration ne remplace de la même manière que d'autres services.

Question : Existe-t-il un moyen de remplacer et d'ajouter une nouvelle option au nginx http Contexte sans obtenir le Directive est dupliquer erreur? Ou devrais-je absolument abandonner l'idée et ramasser le nginx.conf?

Merci beaucoup pour votre aide.

Cette question similaire ne résout pas vraiment mon problème, car je souhaite également profiter des options par défaut NGinx définis automatiquement pour moi (par exemple. worker_processes auto;)

14
Gui-Don

Ou devrais-je complètement abandonner l'idée et ramasser le nginx.conf?

Oui tu devrais.

Les seuls changements qui sont jamais effectués par les maintenants de paquets sont soit

  • des valeurs par défaut plus sensibles pour les paramètres que vous devriez avoir configuré vous-même un looong il y a du temps quand même
  • #- Les exemples préfixés qui ne seraient pas utilisés sans votre action

Dans le passé, les seuls changements importants étaient ssl_protocols, ssl_prefer_server_ciphers et worker_processes. Vous auriez dû remplacer ces années de toute façon avant de les définir dans le paquet Deb semblait être une chose raisonnable à faire pour les responsables de l'emballage.

Dans le passé, la seule réelle atténuation qui aurait pu être expédiée avec un système nginx.conf à large système, ajoutant max_ranges 1; Pour CVE-2017-7529 n'était pas expédié par une distribution que je connaisse, ils ont publié le correctif de la vulnérabilité avant la plupart des administrateurs ont même appliqué l'atténuation.

Vous ne pouvez pas vous attendre à ce que les responsables de l'emballage soient plus rapides que vous ne vous trouvez pas de modifications potentiellement ruptures, vous ne profiterez probablement pas de hériter de leur configuration. Les responsables de paquets ne peuvent pas savoir ce qui est le meilleur pour les millions d'usages là-bas et sera donc extrêmement conservateur dans la modification des valeurs ici.

Tant que votre système de sauvegarde fonctionne correctement, c'est probablement une bonne idée de conserver la configuration en place, de sorte que APT vous vous posera lors de mises à jour interactives comment agir lors de modifications de maintenance au fichier de configuration.


Comment déterminez-vous quels changements ont été appliqués entre différentes versions? Vous pouvez comparer toutes les versions de package disponibles (non vérifiée, précitée) comme celle-ci:

(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)
2
anx