Apache HTTP サーバ バージョン 2.4 (original) (raw)
設定ファイル
この日本語訳はすでに古くなっている 可能性があります。 最近更新された内容を見るには英語版をご覧下さい。
この文書では、Apache HTTP サーバを設定するのに使用するファイルについて 記述しています。
参照
メインの設定ファイル
Apache は ディレクティブ を設定ファイルに平文で書くことにより設定します。 メインの設定ファイルは普通は httpd.conf
という名前です。 このファイルの位置はコンパイル時に設定されますが、コマンドラインの-f
フラグにより上書きできます。 また、他の設定ファイルを [Include](./mod/core.html#include)
ディレクティブによって追加でき、ワイルドカードを使用して多数の 設定ファイルを追加することができます。 どんなディレクティブも、これらの設定ファイルどれにでも入れることができます。 Apache は起動時か再起動時のみメイン設定ファイルの変更を認識します。
サーバは MIME ドキュメントタイプを含んでいるファイルも読み込みます。ファイル名は[TypesConfig](./mod/mod%5Fmime.html#typesconfig)
で設定され、デフォルトでは mime.types
になっています。
設定ファイルの構文
Apache の設定ファイルは 1 行に 1 つのディレクティブからなります。 バックスラッシュ "\" はディレクティブが次の行に継続していることを 示すために行の最後の文字として使われているかもしれません。 行の最後とバックスラッシュの間に他の文字や空白があってはいけません。
設定ファイルのディレクティブは大文字小文字を区別しませんが、 引数にはしばしば区別するものがあります。ハッシュ文字 "#" で始まる行はコメントと見なされて無視されます。 設定ディレクティブと同一行の末尾にコメントが含まれていてはいけません。ディレクティブの前の空行と空白は無視されますので、 わかりやすくするためにディレクティブをインデントしても構いません。
設定ファイルの構文エラーは、apachectl configtest
かコマンドラインオプション-t
を使って調べられます。
モジュール
Apache はモジュール化されたサーバです。 コアサーバには最も基本的な機能だけが含まれています。拡張機能は Apache にロードされるモジュールとして利用可能です。デフォルトでは、コンパイル時にモジュールのBase セット (基本セット) が サーバに含まれます。サーバが動的ロードモジュールを使うようにコンパイルされている場合は、 モジュールを別にコンパイルして、いつでも[LoadModule](./mod/mod%5Fso.html#loadmodule)
ディレクティブを使って追加できます。 そうでない場合は、モジュールの追加や削除をするためには Apache を再コンパイルする必要があります。設定ディレクティブは [<IfModule>](./mod/core.html#ifmodule)
ブロックに入れることで特定のモジュールが存在するときだけ 設定ファイルに含まれるようにすることができます。
コマンドラインオプション -l
を使って現時点で どのモジュールがサーバにコンパイルされているかを知ることができます。
.htaccess ファイル
Apache ではウェブツリーの中に置かれた特別なファイルを使って 非中央集権的な設定管理をできます。その特別なファイルは普通は.htaccess
という名前で、[AccessFileName](./mod/core.html#accessfilename)
ディレクティブでどんな名前にでも指定できます。.htaccess
ファイルに書かれたディレクティブはファイルを置いた ディレクトリとその全てのサブディレクトリに適用されます。.htaccess
ファイルは、メインの設定ファイルと同じ 構文を使います。.htaccess
ファイルはすべてのリクエストで読み込まれるため、 変更はすぐに反映されます。
どのディレクティブが .htaccess
ファイルに書けるかを調べるには、ディレクティブのコンテキスト を調べてください。サーバ管理者はさらにメイン設定ファイルの[AllowOverride](./mod/core.html#allowoverride)
を設定することでどのディレクティブを .htaccess
ファイルに書けるようにするかを制御することができます。
.htaccess
ファイルに関する詳しい情報は.htaccess チュートリアル を参照してください。
コメント
Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our mailing lists.