apacheの設定にこれらの2つのファイルのどちらを使用する必要がありますか?
httpd.conf
は空ですが、Apache2.conf
ではありません。
それは私を混乱させます!
Httpd.confは、ユーザー構成用に設計されています。 Apache2.confは将来のアップグレードで更新される可能性があるため、編集しないでください。
追加のオプションは、カスタム構成を/etc/Apache2/conf.dに置くことです。このディレクトリ内のすべてのファイルも含まれます。
これらは唯一のオプションではありません。 Ubuntu/Debianでは、Apacheは/etc/Apache2/sites-enabled/
内のすべてのファイルも処理します(これはすべきsites-available/
およびa2ensite
プログラムによって管理されるa2dissite
ディレクトリ内のファイルへのシンボリックリンクです)
これらのディレクトリをVirtualHost
sに使用することを目的としています。
Apache2.confにはhttpd.confが含まれています。
a@test$:/etc/Apache2$ cat Apache2.conf | grep httpd.conf
Include /etc/Apache2/httpd.conf
私はhttpd.confは非推奨であると思いますが、保守的な人々のためにそこに残されているので、彼らは彼らが回避する方法を見つけます... :)
編集:
ロブの答えを読んだ後、私はより良いgrepを行いました:
a@test:/etc/Apache2$ grep -C 1 httpd.conf Apache2.conf
# Include all the user configurations:
Include /etc/Apache2/httpd.conf
それはユーザー設定です...
Apache Software Foundationは多くのソフトウェアを公開しており、そのうちの1つはhttpd
という名前のWebサーバーです。 httpdプロジェクトのソースには、とりわけhttpd.conf
サンプル構成ファイルが含まれています。これはデフォルトで/usr/local/etc/httpd
または/etc/httpd
にインストールされます。ほとんどのシステムでは、httpdという名前が付けられています。
しかし、はるか昔に、Debian GNU/Linuxディストリビューションの誰かが、そのディストリビューション内のソフトウェアの名前をhttpd
からApache2
に変更することを決定しました。したがって、Debianシステムでは、Apache2.conf
という名前のディレクトリに/etc/Apache2
という名前の構成ファイルがあります。誰がこれをしたのか、なぜなのかはわかりませんが、Windows "Microsoft"またはESXi "VMware"を呼び出すのと同じくらい、混乱を招きがちです。 UbuntuなどのDebianベースのディストリビューションは、この奇妙さを継承しています。さらに奇妙なことに、ユーザーはカスタム構成を配置できる/etc/Apache2/httpd.conf
からのInclude
dであるファイルApache2.conf
をインクルードします。
つまり、答えは、Debianベースのシステムを使用している場合、Debianが望んでいる方法で頭を曲げるということです。それ以外の場合は、上流のhttpdプロジェクトが行うように、通常は通常の方法で行います。
Apache 2.4
使用してください:
カスタム構成を/etc/Apache2/conf-available/{name}.conf
に配置します
Sudo a2enconf {name}
またはSudo a2disconf {name}
を使用して、設定を有効/無効にします。
(次にApache2サービスを再起動します。)
使用しない:
httpd.conf
は非推奨であり、今後は表示されないはずです。表示された場合は、インストールされた状態で空のままにしてください。
Apache2.conf
はまだインストールされていますが、Apacheをクリーン/簡単にアップグレードする場合は、そのままにしておきます。
-
上記のように、「グローバル」Apache構成で表示される可能性のあるものはすべて、カスタム構成で追加/オーバーライドできます。
apache2.confを開いて内容を確認するだけです。
Include /etc/Apache2/mod-enabled/*.conf
Include /etc/Apache2/httpd.conf
したがって、独自の構成を含めたい場合は、httpd.confに追加すると、Apache2.confが自動的に取得します。
別の言い方をすれば、Apache2.confはマシンで生成できるため、触れない方が良いでしょう。
詳細については、通常、UbuntuはApache2.confを使用し、Centosはhttpd.confを使用します。したがって、これらすべてのファイルは、使用しているOSによって異なります。
Apache2.conf
は空ではなく、httpd.conf
は空です。おそらくApache2.conf
;-)
しかし、私は一方がもう一方を含んでいると思います(そしてそれらの1つは後方互換性の理由で純粋に保持されます)-したがって、それはあまり変更されるべきではありません。
それでも、新しいVirtualHost
などの何かを追加したい場合、ファイルを入れて含めることができる別のサブディレクトリはありませんか?
それはおそらくより良い解決策でしょう:デフォルトのファイルを変更しないでしょう-更新を単純化するでしょう。