構成情報をconf/httpd.confに保存し、一部がconf.dフォルダのファイルに保存するのはなぜですか?

構成情報をconf/httpd.confに保存し、一部がconf.dフォルダのファイルに保存するのはなぜですか?

デフォルトのApache設定ファイルは/etc/httpd/conf/httpd.conf私のCentOSシステムにあり、次の行があります。

Include conf.d/*.conf

conf.dの内部には、主に次のタスクを実行するファイルがあります。

LoadModule auth_kerb_module modules/mod_auth_kerb.so

しかし、そこには別のサイトが設定されており、独自のプロファイルがあります。これはよく考えられていないのでしょうか、それとも私が何かを見逃していますか?

答え1

構成ファイルを分離することは、構成ファイルを管理する1つの方法です。モジュール固有の構成行を独自のファイルに入れると、モジュールの有効化と無効化が容易になります。これで小さな設定ファイルだけを編集するだけで、管理にも役立ちます。 (500行のhttpd.confを開き、間違ったオプションを見つけることを想像してください。)

システムごとにApache構成ファイルを分離する方法が異なるようです。たとえば、Gentooにはmodules.d/andがvhosts.d/あり、Ubuntuにはconf.d/、、、mods-available/およびがmods-enabled/あります。名前やhttpd.confの行を見ると、彼らが何をしているのかを推測できます。sites-available/sites-enabled/Include

答え2

ApacheのHTTPdの機能を提供するいくつかのパッケージがあるため、デフォルトのパッケージにはほとんどのデフォルト設定を提供するhttpd.confをインストールしますが、他のパッケージ(mod_ssl、nagios、phpなど)には構成に含める必要があります。 。各パッケージのファイル。パック。 Red Hat パッケージは conf.d ディレクトリを使用してこれらのパッケージの設定を配置します。それ以外の場合は、各パッケージのhttpd.confを変更する必要があり、パッケージのインストール中に自動化するのは困難です。

答え3

Apacheの設定ファイルの特定の場所がうまく文書化されていないことがわかりました。具体的には、最近これを行う基本的な方法を変更したので、これはさらにそうです。ソースからインストールしますか、それともパッケージからインストールしますか?パッケージ、特にDebianパッケージは、Apacheのソースコードにまったく従わないようです。

Apacheで多くのことをしてからかなりの時間が経過しましたが、覚えている場合は、conf.d /はあなたが投稿したものと同じデーモンモジュールやffiなどをロードする場所です。

そしてconf /はサイト固有の設定ファイルがある場所です。

これがソースからインストールされている様子です。

 % ll /opt/apache2
drwxr-xr-x  2 root 4.0K 2010-10-25 14:14 bin/
drwxr-xr-x  2 root 4.0K 2010-10-25 14:14 build/
drwxr-xr-x  2 root 4.0K 2010-10-25 14:14 cgi-bin/
drwxr-xr-x  4 root 4.0K 2010-10-28 15:54 conf/
drwxr-xr-x  3 root 4.0K 2010-10-25 14:14 error/
drwsrwxrwx  3 www  4.0K 2010-10-28 13:06 htdocs/
drwxr-xr-x  3 root 4.0K 2010-10-25 14:14 icons/
drwxr-xr-x  2 root 4.0K 2010-10-25 14:14 include/
drwxr-xr-x  3 root 4.0K 2010-10-25 14:14 lib/
drwxr-xr-x  3 root 4.0K 2010-10-28 16:11 logs/
drwxr-xr-x  4 root 4.0K 2010-10-25 14:14 man/
drwxr-xr-x 14 root  12K 2010-10-14 11:45 manual/
drwxr-xr-x  2 root 4.0K 2010-10-25 14:20 modules/
 % ll /opt/apache2/conf
total 88K
drwxr-xr-x 2 root 4.0K 2010-10-28 15:55 extra/
drwxr-xr-x 3 root 4.0K 2010-10-25 14:14 original/
-rw-r--r-- 1 root  14K 2010-10-28 15:54 httpd.conf
-rw-r--r-- 1 root  13K 2010-10-25 14:14 magic
-rw-r--r-- 1 root  45K 2010-10-25 14:14 mime.types



% ll /opt/apache2/conf/extra
total 60K
-rw-r--r-- 1 root  179 2010-10-28 15:31 20_mod_fastcgi.conf
-rw-r--r-- 1 root 2.8K 2010-10-25 14:14 httpd-autoindex.conf
-rw-r--r-- 1 root 1.7K 2010-10-25 14:14 httpd-dav.conf
-rw-r--r-- 1 root 2.3K 2010-10-25 14:14 httpd-default.conf
-rw-r--r-- 1 root 1.1K 2010-10-25 14:14 httpd-info.conf
-rw-r--r-- 1 root 5.0K 2010-10-25 14:14 httpd-languages.conf
-rw-r--r-- 1 root  906 2010-10-25 14:14 httpd-manual.conf
-rw-r--r-- 1 root 3.8K 2010-10-25 14:14 httpd-mpm.conf
-rw-r--r-- 1 root 2.2K 2010-10-25 14:14 httpd-multilang-errordoc.conf
-rw-r--r-- 1 root  10K 2010-10-25 14:14 httpd-ssl.conf
-rw-r--r-- 1 root  817 2010-10-25 14:14 httpd-userdir.conf
-rw-r--r-- 1 root 1.8K 2010-10-28 15:55 httpd-vhosts.conf

ただし、これは実際のサーバーではないことに注意してください。私はテスト用に特別にApacheインストールを構築しました。重量

関連情報