soft@appleple.com

【Apache】httpd.confの設定内容

○ServerName ディレクティブ

サーバ名は実際のホスト名とは違うものを設定することが可能です。ただここで設定するサーバ名はDNSに登録されている名前を使用してください。DNSに名前を登録していない場合はIPアドレスを使用してもかまいません。DNSに登録されていない不正な名前をここで使用すると後述するリダイレクトなどがうまく機能しません。

○MaxClients ディレクティブ

・説明
リクエストに応答するために作成される子プロセスの最大個数。
・備考
応答することのできる同時リクエスト数を設定します。他のリクエストの最後まで達して子プロセスが空くと、 次のコネクションに応答します。スレッドを用いないサーバ (すなわち prefork) では、MaxClients は、リクエストに応答するために起動される 子プロセスの最大数となります。 デフォルト値は 256 で、これを増加させたい場合は、 ServerLimit の値も増加させる必要があります。
スレッドを用いるサーバや、ハイブリッドサーバ (すなわち beos worker) では、MaxClients は、クライアントに応答できるスレッドの総数を制限します。 beos でのデフォルト値は 50 です。 ハイブリッド MPM でのデフォルト値は 16 ServerLimit の 25 倍 (ThreadsPerChild) です。 MaxClients を 16 プロセス以上必要な値まで増加させたい場合は、 ServerLimit も増加させる必要があります。

○MaxRequestsPerChild ディレクティブ
・説明
個々の子サーバが稼働中に扱うリクエスト数の上限
・備考
MaxRequestsPerChild ディレクティブは、 個々の子サーバプロセスが扱うことのできるリクエストの制限数を 設定します。
MaxRequestsPerChild 個のリクエストの後に、子プロセスは終了します。 MaxRequestsPerChild が 0 に設定されている場合は、プロセスは期限切れにより終了することはありません。

○Optionsディレクティブ

・Indexes

DirectoryIndexディレクティブで設定したインデックスファイルが存在しない場合に、ファイル一覧を表示するためのオプションです。このオプションを有効にしておくとインデックスファイルが無い場合に自動的に以下のようなファイル一覧ページが表示されます

・ALL

MultiViewsを除くすべてのオプションを有効にします。MultiViewsを有効にしたい場合には、明示的にMultiViewsを追加する必要があるので注意してください

・None

すべてのオプションを無効にします。

・FollowSymLinks・SymLinksifOwnerMatch

ファイルシステム内の別の場所にシンボリックリンク(Windowsであればショートカット)を作成して表示用のファイルを保持したい場合があります。このためには少なくともFollowSymLinksオプションを有効にしておく必要があります。FollowSymLinksオプションが無い場合はページの表示自体が不可能となります。
SymLinksifOwnerMatchはより厳格なFollowSymLinksオプションです。その名前の通り、所有者が一致した場合にのみシンボリックリンク経由でのアクセスを許可します。

・ExecCGI

このオプションを有効にすると、そのディレクトリ内でCGIプログラムを動作させることが可能となります。ただし、スクリプトエリアス(ScriptAliasディレクティブを参照)が作成されているディレクトリでは、このオプションがある無いにかかわらずCGIを使用することが可能です。

・Multiviews

このオプションはHTTP/1.1 の規格に記述されているコンテントネゴシエーションの1形態であるマルチビューを有効にするためのオプションです。マルチビューが有効になっている場合は、例えば/usr/local/apache2/htdocs/testにリクエストがありtestというファイルが存在しない場合に、Apacheはディレクトリ内のtest.*をすべて検索し最適なファイルをユーザに返します。

○AllowOverrideディレクティブ
該当ディレクトリに存在する.htaccessファイルによって上書きされるディレクティブの種類を指定します。All・Noneもしくは個別のディレクティブの組み合わせで指定することが可能です。以下の場合はNoneなので.htaccessファイル内に記述されているディレクティブは使用されません。なお、.htaccessはデフォルトでは存在しません。必要に応じて作成します。

◎Apahce2での文字化け対策 

Apache2ではデフォルトで文字コードが設定されています。具体的にはhttpd.confの以下の部分です。このディレクティブがあるために、HTML内でMETAタグを使って文字コード指定した場合でも文字化けが発生してしまいます。

AddDefaultCharset ISO-8859-1

このためApache2を使用する場合には、必ず以下のようにAddDefaultCharsetディレクティブをコメントアウトしておきましょう。

#AddDefaultCharset ISO-8859-1

Last Update : 2005年04月21日 (木) 23:44