デフォルトのnginx.confを変更せずにデフォルトのnginx http構成を上書きする


14

私の意図/etc/nginx/nginx.conf(debian 8)で定義されているデフォルトの設定を上書きしたいです。アイデアは、将来のシステム更新を容易にし、オーバーライドしなかったオプションの最新の変更を取得できるように、このファイルを完全にそのままにしておくことです。

私がやったこと/etc/nginx/conf.d/他のいくつかのdebianサービスと同じ方法でカスタム設定を作成しました。

問題:ただし、「X」ディレクティブが重複エラーであるため、一部の構成をオーバーライドすることは不可能のようです。Nginxは、他のサービスが行うのと同じ方法で設定の上書きをサポートしていないようです。

質問ディレクティブが重複エラーになることなく、nginx httpコンテキストに新しいオプションをオーバーライドして追加する方法はありますか?それとも、アイデアを完全に放棄して大暴れする必要がありますか?nginx.conf

助けてくれて本当にありがとうございます。

この同様の質問は私の問題を本当に解決しません。なぜなら、私のために自動的に設定されたデフォルトのオプションnginxから利益を得たいからです(例worker_processes auto;


1
あなたは本当にDebianを使用する準備ができていますか?彼らのnginx設定はアップストリームとは全く異なり、これは不可能かもしれません。
マイケルハンプトン

はい。私はすでにDebian上で稼働しているいくつかのプロダクションサーバーがあり、これはapache2をnginxのみに変更することについてです。だから、あなたが私に言っていることは、他のディストリビューションでは、私が試したことはうまくいくかもしれないということですか?Debianで将来動作する可能性はありますか?
グイ・ドン

Debianが将来、より賢明なnginx設定を出荷する可能性は確かにあります。独自に作成することもできます。
マイケルハンプトン

回答:


2

それとも、アイデアを完全に放棄し、nginx.confを暴れまわる必要がありますか?

はい、そうすべきです。

パッケージメンテナーがこれまでに行った唯一の変更は、

  • パラメータのより賢明なデフォルト
  • #-とにかくアクションなしでは使用されない接頭辞付きの例

過去において、重要な変更はssl_protocolsssl_prefer_server_ciphersおよびのみでしたworker_processes。debパッケージにそれらを設定する前に、パッケージメンテナーにとっては合理的なことのように思える前に、とにかくそれらをオーバーライドする必要がありました。

過去に、システム全体の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

@xZeroファイルを別の場所にコピーすると、メンテナンスコストを削減できると言っていますか?もしそうなら、どのように?
x
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.