Apacheで外部に設定ファイルを作って、httpd.confからincludeするという方法があることを知りました。
これを使えば、一部の設定を除き直接httpd.confを修正する必要がないとのことでした。
しかし、色々なサイトを見ていると、ほとんどの場合でhttpd.confを直で修正しているように思います。
外部に設定ファイルを作ってinclude or httpd.confを直接修正するのはどちらが多数はなのでしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答3件
0
ベストアンサー
RHEL 6.x 以前で yum でパッケージインストールした場合、内容によっては httpd.conf をいじらざるを得ない構成になっていましたが、RHEL 7.x 以降は基本的に httpd.conf は触れずに /etc/httpd/conf.d/ 配下にファイルを配置して設定する方向にシフトしていると思います。
Red Hat Enterprise Linux 7 システム管理者のガイド 第11章 WEB サーバー
以下は CentOS 7.x で httpd を yum でインストールした場合のデフォルト構成です。
/etc/httpd/ ├── conf │ ├── httpd.conf │ └── magic ├── conf.d │ ├── README │ ├── autoindex.conf │ ├── userdir.conf │ └── welcome.conf ├── conf.modules.d │ ├── 00-base.conf │ ├── 00-dav.conf │ ├── 00-lua.conf │ ├── 00-mpm.conf │ ├── 00-proxy.conf │ ├── 00-systemd.conf │ └── 01-cgi.conf ├── logs -> ../../var/log/httpd ├── modules -> ../../usr/lib64/httpd/modules └── run -> /run/httpd
外部に設定ファイルを作ってinclude or httpd.confを直接修正するのはどちらが多数はなのでしょうか?
単純に多数派がどちらかと言えば直接修正が多いと想像されます。ご自身が言及されている「色々なサイト」が「直で修正している」からです。
しかし、 Red Hat 社が買収した Ansible などの構成管理ツールの台頭を筆頭に自動化がトレンドの文脈で考えると、デフォルト設定には手を入れずに追加設定ファイルでコントロールする方が冪等性を確保しやすいように思います。
PHP の設定ファイルを見てもモジュールごとに設定ファイルが分離されており、モジュールまたは用途ごとに設定ファイルを分離すること自体は主流と言っても良いかと思います。
主設定ファイルが修正か分離かのトレンドについてはなんとも言えませんが、個人的には「冪等性を確保しやすい」ことと「デフォルト設定からの変更点が把握しやすい」ということから、分離が妥当と考えます。
投稿2016/09/22 09:23
総合スコア580
0
分離します。というか、パッケージのApacheをインストールするとデフォルトですでに分離されてます。
以下はUbuntuのapache2パッケージでインストールした場合の構成です(apache2.confより)。
# /etc/apache2/ # |-- apache2.conf # | `-- ports.conf # |-- mods-enabled # | |-- *.load # | `-- *.conf # |-- conf-enabled # | `-- *.conf # `-- sites-enabled # `-- *.conf
この場合ですと、ポートの設定はports.confに、モジュールの設定はmods-enabled/以下の設定ファイルに、文字コードやCGIなどの設定はconf-enabled/以下に、Webサイトの設定はsites-enabled/以下に、と細かく分かれています。
それぞれの設定ファイルはメイン設定ファイルであるapache2.confからInclude
やIncludeOptional
ディレクティブで読み込まれています。
CentOSのApache2.2でもhttpd.confにはポート番号やタイムアウトなど基本となる設定のみで各サイトの設定やSSLの設定などはconf.d/以下に別ファイルで分かれています。
一つのファイルに全部書くこともできますが、非常に長くなりごちゃごちゃしてしまうので分離した方がいいでしょう。逆に分離しすぎてよくわからない、とかもあるかもしれませんのでその辺は適切に…。
私はローカルの作業環境ではプロジェクトごとに複数のサイトを動作させるので、サイトごとにconfファイルを作成しています。
投稿2016/09/21 18:08
総合スコア306
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/22 12:03