サーバー

サーバータブでは、基本的なサーバーの設定値を設定できます。通常の環境では、これらのオプションにはデフォルト値を設定しておけば十分に動作します。

図 13-13. サーバーの設定

ロックファイルは、LockFileディレクティブに相当します。このディレクティブは、ApacheがUSE_FCNTL_SERIALIZED_ACCEPTまたはUSE_FLOCK_SERIALIZED_ACCEPTのどちらかでコンパイルされるときに使用するロックファイルへのパスを設定します。この値はローカルファイルに格納されている必要があります。logsディレクトリがNFS共有に配置されている場合を除き、デフォルト値のままにしておいてください。このディレクトリがNFS共有に配置されている場合は、デフォルト値をローカルディスク上のrootだけが読み取り可能なディレクトリに変更します。

PIDファイルは、PidFileディレクティブに相当します。このディレクティブは、サーバーがプロセスID(PID)を記録するファイルを設定します。このファイルの読み取り権は、rootにだけ許可します。通常は、デフォルト値のままで十分に動作します。

コアをダンプするディレクトリは、CoreDumpDirectoryディレクティブに相当します。Apacheは、コアをダンプする前にこのディレクトリへの切り替えを試みます。デフォルト値は、ServerRootです。ただし、サーバーを稼動するユーザーがこのディレクトリへの書き込みを禁止されている場合、コアダンプを書き込むことはできません。デバッグ目的でコアダンプをディスクへ書き込みたい場合は、サーバーを稼動するユーザーが書き込み可能なディレクトリに値を変更します。

ユーザ-は、Userディレクティブに相当します。これは、サーバーが要求に応答するために使用するユーザーIDを設定します。このユーザーの設定値によって、サーバーへのアクセス権が決まります。このユーザーがアクセスできないファイルは、Webサイトのビジターもアクセスできません。Userのデフォルトは、apacheです。

このユーザーは、外部に公開することを前提としたファイルへのアクセス特権だけを持ちます。また、サーバーが引き起こしたCGIプロセスの所有者でもあります。このユーザーは、コードを実行したり、HTTP要求へ応答したりすることはできません。

警告警告
 

自分が現在何を実行しているか正確に理解していない限り、Userディレクティブをrootに設定しないでください。Userとしてrootを使用すると、Webサーバーに大きなセキュリティホールを作り出すことになります。

通常の操作時には、親httpdプロセスは最初にrootとして実行されますが、すぐに、apacheユーザーに引き渡されます。サーバーは、番号が1,024未満のポートにバインドする必要があるため、rootとして起動しなければなりません。番号が1,024未満のポートはシステム用に予約されているため、root以外のユーザーが使用することはできません。サーバーは該当するポートへの接続が完了すると、接続要求を受け入れる前に、プロセスをapacheユーザーに引き渡します。

グループ値は、Groupディレクティブに相当します。GroupディレクティブはUserディレクティブと似ています。Groupは、サーバーがどのグループの配下で要求に応答するかを設定します。デフォルト値は、apacheです。