web-dev-qa-db-ja.com

Apacheの設定方法(サイトで利用可能か、httpd.confか)

私は、Apacheを起動して実行する方法を説明するいくつかの基本的なチュートリアル(ubuntuで、Amazonで実行)に従っています。すべてのチュートリアルでhttpd.confを構成するように指示されたため(DocumentRootを追加するためなど)、ほとんど空白になっています。

これで、サイト構成をサイト利用可能ディレクトリ(/ etc/Apacheの下)に追加し、サイト対応からそこにシンボリックリンクするように指示するチュートリアルに出くわしました。このように設定するとうまくいくようです。

しかし、今、私は混乱しています-どのようにしてApacheを設定するべきですか?ほとんどのチュートリアルでは、まだhttpd.confを使用する必要があると言われています。どちらを使用すればよいですか?違いは何ですか?なぜすべてのチュートリアルが「間違っている」のですか(そうである場合)?

27
Edan Maor

_sites-available_メソッドは一般に「Debian Way」と考えられています:

  • _/etc/Apache2/Apache2.conf_の「メイン」設定
  • _/etc/Apache2/httpd.conf_の「ユーザー」設定
  • _/etc/Apache2/sites-available_ファイル内のvhosts(ファイルごとに1つ、通常)
    • あなたはそれらに番号を付けたいかもしれません、例えば。 00-domain.com、01-otherdomain.com
  • _/etc/Apache2/ports.conf_のポート(Listenディレクティブ)
  • _/etc/Apache2/mods-available_のmods

これらをシンボリックリンクまたは_a2_の一連のコマンドで操作できます。

_a2ensite/a2dissite <site_config_filename>
a2enmod/a2dismod <module_name>
_

個人の好みに応じて、apachectl/etc/init.d/Apache2 (start|stop|reload|restart)、またはservice Apache2 (start|stop|reload|restart)を使用してApacheを再起動できます

Vhostエントリの代わりに_httpd.conf_を使用する例は、たとえば、グローバルリダイレクトまたは書き換えルールです。その他の注意点-一般的に、_Apache2.conf_はそのままにし、_sites-available_ディレクトリでvhostsの一貫した命名スキームを設定する必要があります。

37
Sam Halicke

構成ファイルの場所と構成は構成可能であり、メジャーリリース間またはディストリビューション間で変更できます。

Apache Wikiには、設定ファイルの名前と場所への便利な guide があります。

構成ファイルにはincludeディレクティブを含めることができるため、構成の一部を小さなファイルに分離できます。標準のApache構成ファイルには多くのコメントと多くの標準アイテムが含まれているため、変更する可能性が最も高い部分を分離することは理にかなっています。

メイン構成ファイルの名前はコンパイル時に変更でき、最近のリリースではhttpd.confからApache2.confに変更されています

長年にわたって、含まれている構成ファイルの編成にもいくらかの進化がありました。

たとえば、apt-get install Apache2を使用してUbuntu2ベースのシステムにApache2をインストールしました-含まれているファイルは次のとおりです

/etc/Apache2$ ls
Apache2.conf  envvars     mods-available  ports.conf       sites-enabled
conf.d        httpd.conf  mods-enabled    sites-available

/etc/Apache2$ grep ^Include Apache2.conf
Include /etc/Apache2/mods-enabled/*.load
Include /etc/Apache2/mods-enabled/*.conf
Include /etc/Apache2/httpd.conf
Include /etc/Apache2/ports.conf
Include /etc/Apache2/conf.d/
Include /etc/Apache2/sites-enabled/ 

/etc/Apache2$ ls -l sites-enabled
total 0
lrwxrwxrwx 1 root root 26 Dec 26 12:30 000-default -> ../sites-available/default

そのため、最も関心があると思われるいくつかの構成設定は/etc/Apache2/sites-available/defaultにあります。

これはUbuntu Apacheのドキュメント と一致していることがわかります。古いバージョンのApache(または他のディストリビューション)の他のドキュメントがある場合は、Ubuntuでの構成方法に合わせてその情報を調整できます。

9
RedGrittyBrick