]> granicus.if.org Git - apache/blob - docs/manual/mod/mpm_common.xml.ja
Rebuild transformations.
[apache] / docs / manual / mod / mpm_common.xml.ja
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
4 <!-- English Revision: 674934:918022 (outdated) -->
5
6 <!--
7  Licensed to the Apache Software Foundation (ASF) under one or more
8  contributor license agreements.  See the NOTICE file distributed with
9  this work for additional information regarding copyright ownership.
10  The ASF licenses this file to You under the Apache License, Version 2.0
11  (the "License"); you may not use this file except in compliance with
12  the License.  You may obtain a copy of the License at
13
14      http://www.apache.org/licenses/LICENSE-2.0
15
16  Unless required by applicable law or agreed to in writing, software
17  distributed under the License is distributed on an "AS IS" BASIS,
18  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  See the License for the specific language governing permissions and
20  limitations under the License.
21 -->
22
23 <modulesynopsis metafile="mpm_common.xml.meta">
24
25 <name>mpm_common</name>
26 <description>二つ以上のマルチプロセッシングモジュール (MPM)
27 で実装されているディレクティブのコレクション</description>
28 <status>MPM</status>
29
30 <directivesynopsis>
31 <name>AcceptMutex</name>
32 <description>複数の子プロセスがネットワークソケットでリクエストを
33 accept しようとしているときに、Apache がそれらの子プロセスを直列化するために
34 使う方法</description>
35 <syntax>AcceptMutex Default|<var>method</var></syntax>
36 <default>AcceptMutex Default</default>
37 <contextlist><context>server config</context></contextlist>
38 <modulelist><module>leader</module><module>perchild</module>
39 <module>prefork</module><module>threadpool</module><module>worker</module>
40 </modulelist>
41
42 <usage>
43     <p><directive>AcceptMutex</directive> ディレクティブは、
44     ネットワークソケットのリクエストを accept しようとしている複数の子プロセスを
45     Apache が直列化するために使う方法(と必要ならロックファイルの場所)を設定します。
46     Apache 2.0 以前は、このメソッドはコンパイル時にのみ選択できました。
47     最適な方法は、アーキテクチャやプラットホームに大きく依存します。
48     詳細に関しては、<a 
49     href="../misc/perf-tuning.html">性能のチューニング</a>
50     ドキュメントをご覧下さい。</p>
51
52     <p>このディレクティブが <code>Default</code>
53     に設定されていれば、コンパイル時に選択されたデフォルト値が使われます。
54     他の使用可能なメソッドの一覧は下にあります。
55     全てのメソッドが全てのプラットホームで使用可能であるわけではない、
56     ということに注意してください。
57     使用可能でないメソッドが指定された場合は、
58     使用可能なメソッドの一覧を含んだメッセージが
59     エラーログに出力されます。</p>
60
61     <dl>
62       <dt><code>flock&lt;<var>:/path/to/lockfile</var>&gt;</code></dt>
63       <dd>オプションの <var>/path/to/lockfile</var>
64       パラメータで定義したファイルのロックに、
65       <code>flock(2)</code> システムコールを使います。
66       ロックファイルの指定には <directive module="mpm_common">LockFile</directive> 
67       ディレクティブを使うことも出来ます(非推奨です)。</dd>
68
69       <dt><code>fcntl&lt;<var>:/path/to/lockfile</var>&gt;</code></dt>
70       <dd>オプションの <var>/path/to/lockfile</var>
71       パラメータで定義したファイルのロックに、
72       <code>fcntl(2)</code> システムコールを使います。
73       ロックファイルの指定には <directive module="mpm_common">LockFile</directive> 
74       ディレクティブを使うことも出来ます(非推奨です)。</dd>
75
76       <dt><code>file&lt;<var>:/path/to/lockfile</var>&gt;</code></dt>
77       <dd>使用できるファイルロックルーチンの中で最適なものを使います。
78       具体的には、<code>fcntl</code> が使用可能な場合はそれを使い、そうでない場合は
79       <code>flock</code> を試します。
80       この設定はプラットホームと <glossary>APR</glossary> が二つのうち少なくとも
81       一つをサポートしている場合のみ使用可能です。</dd>
82
83       <dt><code>posixsem</code></dt>
84       <dd>排他処理の実装に POSIX 互換セマフォを使用します</dd>
85
86       <dt><code>sysvsem</code></dt>
87       <dd>排他処理の実装に SySV 形式のセマフォを使います。</dd>
88
89       <dt><code>sem</code></dt>
90       <dd>使用できるセマフォルーチンの中で最適なものを使います。
91       具体的には、Posix 互換セマフォが使用可能な場合はそれを使い、そうでない場合は
92       SystemV IPC 形式のセマフォを試します。
93       この設定はプラットホームと <glossary>APR</glossary> が二つのうち少なくとも
94       一つをサポートしている場合のみ使用可能です。</dd>
95
96       <dt><code>pthread</code></dt>
97       <dd>POSIX Threads (PThreads) 規格で実装されている
98       POSIX 排他処理を使います。</dd>
99
100     </dl>
101
102     <p>コンパイル時にシステムのデフォルトに選ばれたものが何かを見たい場合は、
103     <directive module="core">LogLevel</directive> を <code>debug</code>
104     に設定するとよいでしょう。デフォルトの <directive>AcceptMutex</directive>
105     が <directive module="core">ErrorLog</directive> に書き込まれます。</p>
106
107   <note type="warning"><title>警告</title>
108      <p>ほとんどのシステムにおいては、<code>pthread</code> オプションが
109      選ばれていると、子プロセスが <code>AcceptCntl</code> mutex を
110      保持しているときに異常終了した場合、サーバはリクエストへの応答を
111      停止してしまいます。これが発生した場合は、サーバを復旧させるためには
112      手動で再起動させる必要があります。</p>
113
114      <p>Solaris は例外で、Apache も使用している、子プロセスが mutex を
115      保持して異常終了した後に mutex を復旧させるための機構を提供をしています。</p>
116      <p>御使用のシステムが <code>pthread_mutexattr_setrobust_np()</code> 関数を
117      実装している場合は、<code>pthread</code> オプションを安全に使用できる
118      可能性があります。</p>
119   </note>
120 </usage>
121 </directivesynopsis>
122
123 <directivesynopsis>
124 <name>CoreDumpDirectory</name>
125 <description>Apache がコアダンプする前に移動を試みるディレクトリ
126 </description>
127 <syntax>CoreDumpDirectory <var>directory</var></syntax>
128 <default>デフォルトの設定は説明文を読んでください</default>
129 <contextlist><context>server config</context></contextlist>
130 <modulelist><module>beos</module><module>leader</module>
131 <module>mpm_winnt</module><module>perchild</module><module>prefork</module>
132 <module>threadpool</module><module>worker</module></modulelist>
133
134 <usage>
135     <p>Apache がコアダンプする前に移動を試みるディレクトリを制御します。
136     デフォルト値は <directive module="core">ServerRoot</directive>
137     ディレクトリですが、このディレクトリはサーバの実行されているユーザ権限で
138     書き込み可能であるべきではないので、通常はコアダンプは書き込まれません。
139     デバッグのためにコアダンプが必要であれば、
140     このディレクティブを使って他の位置にコアダンプを書き出すようにできます。</p>
141
142     <note><title>Linux でのコアダンプ</title>
143       <p>Apache が root として起動されて、別のユーザの権限に以降した場合は
144       Linux のカーネルはディレクトリがプロセスの権限で書き込み可能な場合でさえも
145       コアダンプを<em>無効</em>にします。Apache (2.0.46 以降) は
146       Linux 2.4 以降ではコアダンプを行なうように再指定しますが、それは
147       <directive>CoreDumpDirectory</directive> を明示的に設定したときに
148       限ります。</p>
149     </note>
150 </usage>
151 </directivesynopsis>
152
153 <directivesynopsis>
154 <name>EnableExceptionHook</name>
155 <description>クラッシュの後に例外ハンドラを実行するフックを有効にする</description>
156 <syntax>EnableExceptionHook On|Off</syntax>
157 <default>EnableExceptionHook Off</default>
158 <contextlist><context>server config</context></contextlist>
159 <modulelist><module>leader</module><module>perchild</module>
160 <module>prefork</module><module>threadpool</module>
161 <module>worker</module></modulelist>
162 <compatibility>2.0.49 以降</compatibility>
163
164 <usage>
165     <p>安全上の理由から、<code>--enable-exception-hook</code> configure
166     オプションを有効にした場合にのみ、このディレクティブを利用できます。
167     外部モジュールをプラグインして、子がクラッシュした後に何か実行できるような
168     フックを有効にします。</p>
169     
170     <p>このような外部モジュールは、既に二つ存在していて、
171     <code>mod_whatkilledus</code> と <code>mod_backtrace</code>
172     がこのフックを活用します。これらの詳細については Jeff Trawick 
173     さんの <a href="http://www.apache.org/~trawick/exception_hook.html"
174     >EnableExceptionHook site</a> を参照してください。</p>
175 </usage>
176 </directivesynopsis>
177
178 <directivesynopsis>
179 <name>GracefulShutdownTimeout</name>
180 <description>穏やかな停止をかけた後、終了するまで待つ時間</description>
181 <syntax>GracefulShutDownTimeout <var>seconds</var></syntax>
182 <default>GracefulShutDownTimeout 0</default>
183 <contextlist><context>server config</context></contextlist>
184 <modulelist><module>prefork</module><module>worker</module>
185 <module>event</module></modulelist>
186 <compatibility>2.2 以降</compatibility>
187
188 <usage>
189     <p><directive>GracefulShutdownTimeout</directive> には
190     サーバーが "graceful-stop" シグナルを受け取ってから現在の
191     リクエストの処理を最大で何秒間続けるかを指定します。</p>
192
193     <p>この値をゼロに設定すると、処理中として残っているリクエストが
194     全て完了するまでサーバーは終了しません。</p>
195 </usage>
196 </directivesynopsis>
197
198 <directivesynopsis>
199 <name>Group</name>
200 <description>リクエストに応答する際に所属するグループ</description>
201 <syntax>Group <var>unix-group</var></syntax>
202 <default>Group #-1</default>
203 <contextlist><context>server config</context></contextlist>
204 <modulelist><module>beos</module><module>leader</module>
205 <module>mpmt_os2</module><module>perchild</module><module>prefork</module>
206 <module>threadpool</module><module>worker</module></modulelist>
207 <compatibility>Apache 2.0 以降で、グローバル設定でのみ有効です。</compatibility>
208
209 <usage>
210     <p><directive>Group</directive> ディレクティブで、
211     リクエストに応答する際に所属しておくグループを設定します。
212     このディレクティブを使用するためには、
213     サーバは最初に <code>root</code> 権限で起動されている必要があります。
214     非 root ユーザでサーバを起動した場合は、指定したグループに変化できずに、
215     結果的に起動したユーザの属するグループで実行されることになります。
216     <var>unix-group</var> は次のうちのいずれかです:</p>
217
218     <dl>
219       <dt>グループ名</dt>
220       <dd>グループを名前で参照します</dd>
221
222       <dt><code>#</code> に続いてグループ番号</dt>
223       <dd>グループを番号で参照します。</dd>
224     </dl>
225
226     <example><title>例</title>
227       Group www-group
228     </example>
229
230     <p>サーバを実行するために特定の新しいグループを設定することを
231     お薦めします。<code>nobody</code> を使用する管理者もいますが、
232     可能であったり望ましい訳では必ずしもありません。</p>
233
234     <note type="warning"><title>セキュリティ</title>
235       <p>正確にどんなことをやっているのか、その危険性を知らないで、
236       <directive>Group</directive> (や <directive
237       module="mpm_common">User</directive>) を
238       <code>root</code> に 設定しないでください。</p>
239     </note>
240
241     <p>特記事項: このディレクティブを
242     <directive module="core" type="section">VirtualHost</directive>
243     で使用することはサポートされなくなりました。Apache 2.0 で
244     <program>suexec</program> を設定したい場合は、
245     <directive module="mod_suexec">SuexecUserGroup</directive>
246     を使用してください。</p>
247
248     <note><title>注意</title>
249       <p><directive>Group</directive> ディレクティブは
250       <module>beos</module> と <module>mpmt_os2</module> MPM
251       にも存在しますが、実質的に無効で、互換性のためだけに存在します。</p>
252     </note>
253 </usage>
254 </directivesynopsis>
255
256 <directivesynopsis>
257 <name>PidFile</name>
258 <description>デーモンのプロセス ID
259 をサーバが記録するためのファイル</description>
260 <syntax>PidFile <var>filename</var></syntax>
261 <default>PidFile logs/httpd.pid</default>
262 <contextlist><context>server config</context></contextlist>
263 <modulelist><module>beos</module><module>leader</module>
264 <module>mpm_winnt</module><module>mpmt_os2</module>
265 <module>perchild</module><module>prefork</module>
266 <module>threadpool</module><module>worker</module></modulelist>
267
268 <usage>
269     <p><directive>PidFile</directive> ディレクティブで、
270     デーモンのプロセス ID をサーバが記録するファイルを設定します。
271     ファイル名が絶対パスでない場合は、
272     <directive module="core">ServerRoot</directive>
273     からの相対的なものとして扱われます。</p>
274
275     <example><title>例</title>
276     PidFile /var/run/apache.pid
277     </example>
278
279     <p>サーバが <directive module="core">ErrorLog</directive>
280     や <directive module="mod_log_config">TransferLog</directive>
281     を閉じて開き直したり、設定ファイルを
282     再読込したりさせるために、サーバにシグナルを送ることができると
283     便利なことがあります。
284     これは SIGHUP (kill -1) シグナルを <directive>PidFile</directive>
285     に書かれているプロセス ID に送ることでできます。</p>
286
287     <p><directive>PidFile</directive> には、ログファイルの設置位置や
288     <a href="../misc/security_tips.html#serverroot">セキュリティ</a>
289     と全く同じ注意点があります。</p>
290
291     <note><title>注意</title>
292       <p>Apache 2 では、
293       <program>apachectl</program>
294       スクリプトのみを使用してサーバの (再) 起動や停止を
295       行なうことを推奨しています。</p>
296     </note>
297 </usage>
298 </directivesynopsis>
299
300 <directivesynopsis>
301 <name>Listen</name>
302 <description>サーバが listen するIP アドレスとポート番号</description>
303 <syntax>Listen [<var>IP-address</var>:]<var>portnumber</var> [<var>protocol</var>]</syntax>
304 <contextlist><context>server config</context></contextlist>
305 <modulelist><module>beos</module><module>leader</module>
306 <module>mpm_netware</module><module>mpm_winnt</module>
307 <module>mpmt_os2</module><module>perchild</module>
308 <module>prefork</module><module>threadpool</module><module>worker</module>
309 <module>event</module>
310 </modulelist>
311 <compatibility>Apache 2.0 から必須ディレクティブ。<var>protocol</var>
312 引数は 2.1.5 で追加。</compatibility>
313
314 <usage>
315     <p><directive>Listen</directive> ディレクティブは Apache
316     が特定の IP アドレスやポート番号だけを listen するように指定します。
317     デフォルトでは全ての IP インターフェースのリクエストに応答します。
318     <directive>Listen</directive> ディレクティブは
319     現在は必須のディレクティブとなりました。
320     もし設定ファイルになければ、サーバは起動に失敗します。
321     これは以前のバージョンの Apache から変更のあった部分です。</p>
322
323     <p><directive>Listen</directive> ディレクティブでは、特定のポートあるいは
324     アドレスとポートの組み合わせから入ってくるリクエストに対して
325     応答するように指定します。
326     もしポート番号だけが指定された場合は、サーバは全インターフェースの
327     指定されたポート番号に対して listen します。
328     IP アドレスがポートとともに指定された場合は、
329     サーバは指定されたポートとインターフェースに対して listen 
330     します。</p>
331
332     <p>複数のアドレスとポートに対して listen するように、
333     複数の <directive>Listen</directive> ディレクティブを使うこともできます。
334     サーバは列挙されたアドレスとポート全てからのリクエストに対して
335     応答します。</p>
336
337     <p>例えば、サーバが 80 番ポートと 8000 番ポートの両方の
338     コネクションを受け入れる場合は、次のようにします。</p>
339
340     <example>
341        Listen 80<br />
342        Listen 8000
343     </example>
344
345     <p>二つの特定のインターフェースとポート番号からのコネクションを
346     受け入れるようにするには、次のようにします。</p>
347
348     <example>
349        Listen 192.170.2.1:80<br />
350        Listen 192.170.2.5:8000
351     </example>
352
353     <p>IPv6 アドレスは角括弧で囲まなければなりません。
354     例えば次の例のようにです。</p>
355
356     <example>
357        Listen [2001:db8::a00:20ff:fea7:ccea]:80
358     </example>
359
360     <p><var>protocol</var> オプション引数は通常の設定では必要ありません。
361        無指定の場合、443 番ポートには <code>https</code> が、他のポートには
362        <code>http</code> がデフォルト値として使用されます。
363        protocol 指定は、どのモジュールがリクエストを処理するかを決定し、
364        <directive module="core">AcceptFilter</directive> 
365        によるプロトコル特有の最適化を行うようにします。</p>
366
367     <p>非標準なポートで運用している際にのみ protocol 指定が必要になります。
368        たとえば <code>https</code> なサイトを 8443 番ポートで運用している場合 :</p>
369
370     <example>
371       Listen 192.170.2.1:8443 https
372     </example>
373
374     <note><title>エラー条件</title>
375       同一 IP アドレスとポートの組に、複数の <directive>Listen</directive> 
376       ディレクティブを指定してしまうと、<code>Address already in use</code> 
377       というエラーメッセージを受けることになります。
378     </note>
379
380 </usage>
381
382 <seealso><a href="../dns-caveats.html">DNS の問題</a></seealso>
383 <seealso><a href="../bind.html">Apache
384 が使用するアドレスとポートの設定</a></seealso>
385 </directivesynopsis>
386
387 <directivesynopsis>
388 <name>ListenBackLog</name>
389 <description>保留状態のコネクションのキューの最大長</description>
390 <syntax>ListenBacklog <var>backlog</var></syntax>
391 <default>ListenBacklog 511</default>
392 <contextlist><context>server config</context></contextlist>
393 <modulelist><module>beos</module><module>leader</module>
394 <module>mpm_netware</module><module>mpm_winnt</module>
395 <module>mpmt_os2</module><module>perchild</module><module>prefork</module>
396 <module>threadpool</module><module>worker</module></modulelist>
397
398 <usage>
399     <p>保留状態のコネクションのキューの最大長です。
400     一般的には調整する必要はありませんし、調整は望ましくありません。
401     しかし、TCP SYN フラッドアタックの状況下におかれる場合に、
402     増やした方が望ましいシステムもあります。
403     <code>listen(2)</code> システムコールのバックログパラメータを
404     ご覧下さい。</p>
405
406     <p>この値は OS により、小さな数に抑えられます。
407     値は OS 毎に異なっています。また多くの OS では、
408     バックログとして指定されている値ちょうどまで使っているわけではなく、
409     設定されている値に基づいて (通常は設定値よりも大きな値を)
410     使っていることに注意してください。</p>
411 </usage>
412 </directivesynopsis>
413
414 <directivesynopsis>
415 <name>LockFile</name>
416 <description>受付を直列化するためのロックファイルの位置<em>(非推奨)</em></description>
417 <syntax>LockFile <var>filename</var></syntax>
418 <default>LockFile logs/accept.lock</default>
419 <contextlist><context>server config</context></contextlist>
420 <modulelist><module>leader</module><module>perchild</module>
421 <module>prefork</module><module>threadpool</module><module>worker</module>
422 </modulelist>
423
424 <usage>
425     <p><directive module="mpm_common">AcceptMutex</directive>
426     が <code>fcntl</code> や <code>flock</code>
427     に設定されて使用されている場合に、使用されるロックファイルへのパスを
428     <directive>LockFile</directive> ディレクティブで設定します。
429     このディレクティブは通常はそのままにしておきます。
430     主に <code>logs</code> ディレクトリが NFS
431     でマウントされている場合などに値を変えます。
432     なぜなら<strong>ロックファイルはローカルディスクに
433     保存されなければならない</strong>からです。
434     メインサーバプロセスの PID がファイル名に自動的に付加されます。</p>
435
436     <note type="warning"><title>セキュリティ</title>
437       <p><code>/var/tmp</code>
438       といった、誰でも書き込めるディレクトリにファイルを
439       <em>置かない</em>方がよいです。なぜなら、サーバが起動時に作成する
440       ロックファイルの作成自体を妨害することによって、
441       誰でもサービス拒否アタックを引き起こすことができるからです。</p>
442     </note>
443     <note type="warning"><title>非推奨</title>
444       <p>このディレクティブは非推奨です。 <directive 
445       module="mpm_common">AcceptMutex</directive>
446       ディレクティブで排他処理の方法の指定とともにロックファイルの場所も指定してください。</p>
447     </note>
448
449 </usage>
450 <seealso><directive module="mpm_common">AcceptMutex</directive></seealso>
451 </directivesynopsis>
452
453 <directivesynopsis>
454 <name>MaxClients</name>
455 <description>リクエストに応答するために作成される
456 子プロセスの最大個数</description>
457 <syntax>MaxClients <var>number</var></syntax>
458 <default>詳細は使用法をご覧下さい。</default>
459 <contextlist><context>server config</context></contextlist>
460 <modulelist><module>beos</module><module>leader</module>
461 <module>prefork</module><module>threadpool</module><module>worker</module>
462 </modulelist>
463
464 <usage>
465     <p><directive>MaxClients</directive> ディレクティブは、
466     応答することのできる同時リクエスト数を設定します。
467     <directive>MaxClients</directive> 制限数を越えるコネクションは通常、
468     <directive module="mpm_common">ListenBacklog</directive>
469     ディレクティブで設定した数までキューに入ります。
470     他のリクエストの最後まで達して子プロセスが空くと、
471     次のコネクションに応答します。</p>
472
473     <p>スレッドを用いないサーバ (<em>すなわち</em> <module>prefork</module>)
474     では、<directive>MaxClients</directive>
475     は、リクエストに応答するために起動される
476     子プロセスの最大数となります。
477     デフォルト値は <code>256</code> で、これを増加させたい場合は、
478     <directive module="mpm_common">ServerLimit</directive>
479     の値も増加させる必要があります。</p>
480
481     <p>スレッドを用いるサーバや、ハイブリッドサーバ (<em>すなわち</em>
482     <module>beos</module> <module>worker</module>)
483     では、<directive>MaxClients</directive> 
484     は、クライアントに応答できるスレッドの総数を制限します。
485     <module>beos</module> でのデフォルト値は <code>50</code> です。
486     ハイブリッド MPM でのデフォルト値は <code>16</code>
487     <directive module="mpm_common">ServerLimit</directive>
488     の <code>25</code> 倍 (<directive
489     module="mpm_common">ThreadsPerChild</directive>) です。
490     <directive>MaxClients</directive>
491     を 16 プロセス以上必要な値まで増加させたい場合は、
492     <directive module="mpm_common">ServerLimit</directive>
493     も増加させる必要があります。</p>
494 </usage>
495 </directivesynopsis>
496
497 <directivesynopsis>
498 <name>MaxMemFree</name>
499 <description><code>free()</code> が呼ばれない限り、
500 主メモリアロケータが保持し続けられるメモリの最大量</description>
501 <syntax>MaxMemFree <var>KBytes</var></syntax>
502 <default>MaxMemFree 0</default>
503 <contextlist><context>server config</context></contextlist>
504 <modulelist><module>beos</module><module>leader</module>
505 <module>mpm_netware</module><module>prefork</module>
506 <module>threadpool</module><module>worker</module><module>mpm_winnt</module></modulelist>
507
508 <usage>
509     <p><directive>MaxMemFree</directive> ディレクティブは
510     <code>free()</code> が呼ばれない限り、
511     主アロケータが保持できる空のメモリの最大値をキロバイト単位で設定します。
512     設定されていないか、零に設定されているときは、無制限になります。</p>
513 </usage>
514 </directivesynopsis>
515
516 <directivesynopsis>
517 <name>MaxRequestsPerChild</name>
518 <description>個々の子サーバが稼働中に扱うリクエスト数の上限</description>
519 <syntax>MaxRequestsPerChild <var>number</var></syntax>
520 <default>MaxRequestsPerChild 10000</default>
521 <contextlist><context>server config</context></contextlist>
522 <modulelist><module>leader</module><module>mpm_netware</module>
523 <module>mpm_winnt</module><module>mpmt_os2</module>
524 <module>perchild</module><module>prefork</module>
525 <module>threadpool</module><module>worker</module></modulelist>
526
527 <usage>
528     <p><directive>MaxRequestsPerChild</directive> ディレクティブは、
529     個々の子サーバプロセスが扱うことのできるリクエストの制限数を
530     設定します。<directive>MaxRequestsPerChild</directive>
531     個のリクエストの後に、子プロセスは終了します。
532     <directive>MaxRequestsPerChild</directive> が <code>0</code>
533     に設定されている場合は、プロセスは期限切れにより終了することはありません。</p>
534
535     <note><title>その他のデフォルト値</title>
536       <p><module>mpm_netware</module> と <module>mpm_winnt</module>
537       でのデフォルト値は <code>0</code> です。</p>
538     </note>
539
540     <p><directive>MaxRequestsPerChild</directive>
541     を非ゼロにすることにより、(偶発的な) メモリーリークが起こった場合に
542     プロセスが消費するメモリの総量を制限できます。</p>
543
544     <note><title>注</title>
545       <p><directive module="core">KeepAlive</directive> リクエストの場合は、
546       一つ目のリクエストだけがこの制限に該当します。
547       実効的には、一つの子プロセスあたりの<em>コネクション</em>数を
548       制限するように挙動が変化します。</p>
549     </note>
550 </usage>
551 </directivesynopsis>
552
553 <directivesynopsis>
554 <name>MaxSpareThreads</name>
555 <description>アイドルスレッドの最大数</description>
556 <syntax>MaxSpareThreads <var>number</var></syntax>
557 <default>詳細は使用法をご覧下さい。</default>
558 <contextlist><context>server config</context></contextlist>
559 <modulelist><module>beos</module><module>leader</module>
560 <module>mpm_netware</module><module>mpmt_os2</module>
561 <module>perchild</module><module>threadpool</module><module>worker</module>
562 </modulelist>
563
564 <usage>
565     <p>アイドルなスレッドの最大数です。異なる MPM ではそれぞれ、
566     このディレクティブは異なる取り扱われ方をされます。</p>
567
568     <p><module>perchild</module> では、
569     デフォルトは <code>MaxSpareThreads 10</code> です。
570     この MPM はアイドルスレッド数を、それぞれの子プロセスごとに監視します。
571     子プロセスにアイドルスレッドが多すぎる場合は、
572     サーバはその子プロセスに含まれるスレッドを終了し始めます。</p>
573
574     <p><module>worker</module>, <module>leader</module>,
575     <module>threadpool</module> では、
576     デフォルトは <code>MaxSpareThreads 250</code> です。
577     この MPM はアイドルスレッド数をサーバ全体で監視します。
578     サーバでアイドルスレッド数が多すぎる場合は、
579     この数字よりも少ない数になるまで子プロセスを終了します。</p>
580
581     <p><module>mpm_netware</module> では、
582     デフォルトは <code>MaxSpareThreads 100</code> です。
583     この MPM はシングルプロセスで実行されますので、
584     スペアスレッド数もサーバ全体で勘定します。</p>
585
586     <p><module>beos</module> と <module>mpmt_os2</module> は
587     <module>mpm_netware</module> と似た挙動をします。
588     <module>beos</module> でのデフォルト値は <code>MaxSpareThreads 50</code>
589     です。<module>mpmt_os2</module> でのデフォルト値は <code>10</code>
590     です。</p>
591
592     <note><title>制限事項</title>
593       <p><directive>MaxSpareThreads</directive> の取る値には制限があります。
594       Apache は次の規則に従って自動的に補正します。</p>
595       <ul>
596         <li><module>perchild</module> では、
597         <directive>MaxSpareThreads</directive> が
598         <directive module="mpm_common">ThreadLimit</directive>
599         と等しいかそれ以下である必要があります。</li>
600
601         <li><module>mpm_netware</module> は
602         <directive module="mpm_common">MinSpareThreads</directive>
603         よりも大きい必要があります。</li>
604
605         <li><module>leader</module>, <module>threadpool</module>, 
606         <module>worker</module> では、
607         <directive module="mpm_common">MinSpareThreads</directive> と
608         <directive module="mpm_common">ThreadsPerChild</directive>
609         で決まる総和と等しいか大きい必要があります。</li>
610       </ul>
611     </note>
612 </usage>
613 <seealso><directive module="mpm_common">MinSpareThreads</directive></seealso>
614 <seealso><directive module="mpm_common">StartServers</directive></seealso>
615 </directivesynopsis>
616
617 <directivesynopsis>
618 <name>MinSpareThreads</name>
619 <description>リクエストに応答することのできる
620 アイドルスレッド数の最小数</description>
621 <syntax>MinSpareThreads <var>number</var></syntax>
622 <default>詳細は使用方法をご覧下さい。</default>
623 <contextlist><context>server config</context></contextlist>
624 <modulelist><module>beos</module><module>leader</module>
625 <module>mpm_netware</module><module>mpmt_os2</module>
626 <module>perchild</module><module>threadpool</module><module>worker</module>
627 </modulelist>
628
629 <usage>
630     <p>リクエストに応答するスレッド数の最小値です。
631     異なる MPM ではそれぞれ、
632     このディレクティブは異なる取り扱われ方をします。</p>
633
634     <p><module>perchild</module> では、
635     デフォルトは <code>MinSpareThreads 5</code> で、
636     アイドルスレッド数を子プロセス毎に監視します。
637     もし子プロセスに十分な数のスレッドがなければ、
638     サーバはその子プロセスに新しいスレッドを作り始めます。
639     ですから、<directive module="perchild">NumServers</directive>
640     を <code>10</code> に、<directive>MinSpareThreads</directive> を
641     <code>5</code> にした場合は、最小でも 50 のアイドルスレッドが
642     システム上にあることになります。</p>
643
644     <p><module>worker</module>, <module>leader</module>,
645     <module>threadpool</module> では、
646     デフォルトは <code>MinSpareThreads 75</code> で、
647     アイドルスレッド数をサーバ全体で監視します。
648     もしサーバに十分な数のアイドルスレッドがなければ、
649     アイドルスレッド数がこの数 <var>number</var> よりも大きくなるまで
650     新しい子プロセスが生成されます。</p>
651
652     <p><module>mpm_netware</module> では、
653     デフォルトは <code>MinSpareThreads 10</code> で、
654     シングルプロセス MPM ですので、サーバ全体で管理されます。</p>
655
656     <p><module>beos</module> と <module>mpmt_os2</module> は、
657     <module>mpm_netware</module>によく似ています。
658     <module>beos</module> でのデフォルトは <code>MinSpareThreads 1</code>
659     です。<module>mpmt_os2</module> でのデフォルトは
660     <code>5</code> です。</p>
661 </usage>
662 <seealso><directive module="mpm_common">MaxSpareThreads</directive></seealso>
663 <seealso><directive module="mpm_common">StartServers</directive></seealso>
664 </directivesynopsis>
665
666 <directivesynopsis>
667 <name>ScoreBoardFile</name>
668 <description>子プロセスと連携するためのデータを保存する
669 ファイルの位置</description>
670 <syntax>ScoreBoardFile <var>file-path</var></syntax>
671 <default>ScoreBoardFile logs/apache_status</default>
672 <contextlist><context>server config</context></contextlist>
673 <modulelist><module>beos</module><module>leader</module>
674 <module>mpm_winnt</module><module>perchild</module><module>prefork</module>
675 <module>threadpool</module><module>worker</module></modulelist>
676
677 <usage>
678     <p>Apache は親プロセスと子プロセス間の通信にスコアボードを用います。
679     この通信機能にファイルを必要とするアーキテクチャもあります。
680     ファイルが指定されていなければ、Apache はまずメモリ上
681     (匿名共有メモリ) にスコアボードを作ろうとし、それが失敗すると
682     ディスク上にファイル (ファイルベースの共有メモリ) を作ろうとします。
683     このディレクティブを指定すると、Apache
684     は必ずディスクにファイルを生成します。</p>
685
686     <example><title>例</title>
687       ScoreBoardFile /var/run/apache_status
688     </example>
689
690     <p>ファイルベースの共有メモリは、サードパーティー製のアプリケーションで
691     スコアボードに直接アクセスする必要がある場合に役に立ちます。</p>
692
693     <p><directive>ScoreBoardFile</directive> を使う場合、
694     RAM ディスク上に置くとスピードが向上するでしょう。
695     しかし、ログファイルの設置位置や
696     <a href="../misc/security_tips.html">セキュリティ</a>
697     と同様の注意点があるので、注意してください。</p>
698 </usage>
699 <seealso><a href="../stopping.html">Apache の停止と再起動</a></seealso>
700 </directivesynopsis>
701
702 <directivesynopsis>
703 <name>ReceiveBufferSize</name>
704 <description>TCP 受信バッファサイズ</description>
705 <syntax>ReceiveBufferSize <var>bytes</var></syntax>
706 <default>ReceiveBufferSize 0</default>
707 <contextlist><context>server config</context></contextlist>
708 <modulelist><module>beos</module>
709 <module>mpm_netware</module><module>mpm_winnt</module>
710 <module>mpmt_os2</module><module>prefork</module>
711 <module>worker</module></modulelist>
712
713 <usage>
714     <p>サーバは TCP 受信バッファサイズを指定されたバイト数に設定します。</p>
715
716     <p><code>0</code>にした場合、OS のデフォルト値が使用されます。</p>
717 </usage>
718 </directivesynopsis>
719
720 <directivesynopsis>
721 <name>SendBufferSize</name>
722 <description>TCP バッファサイズ</description>
723 <syntax>SendBufferSize <var>bytes</var></syntax>
724 <default>SendBufferSize 0</default>
725 <contextlist><context>server config</context></contextlist>
726 <modulelist><module>beos</module><module>leader</module>
727 <module>mpm_netware</module><module>mpm_winnt</module>
728 <module>mpmt_os2</module><module>perchild</module><module>prefork</module>
729 <module>threadpool</module><module>worker</module></modulelist>
730
731 <usage>
732     <p>サーバは TCP 送信バッファサイズを指定されたバイト数に設定します。
733     高速で高レイテンシな環境で
734     (<em>例</em> 100ms 程度、大陸横断高速通信路など)
735     古い一般的な OS のデフォルト値を増やすのに非常に便利です。</p>
736
737     <p><code>0</code>にした場合、OS のデフォルト値が使用されます。</p>
738 </usage>
739 </directivesynopsis>
740
741 <directivesynopsis>
742 <name>ServerLimit</name>
743 <description>設定可能なサーバプロセス数の上限</description>
744 <syntax>ServerLimit <var>number</var></syntax>
745 <default>詳細は使用法を参照</default>
746 <contextlist><context>server config</context></contextlist>
747 <modulelist><module>leader</module><module>perchild</module>
748 <module>prefork</module><module>threadpool</module><module>worker</module>
749 </modulelist>
750
751 <usage>
752     <p><module>prefork</module> MPM の場合は、このディレクティブは
753     Apache プロセス稼働中における
754     <directive module="mpm_common">MaxClients</directive>
755     に設定可能な上限値を設定することになります
756     <transnote>prefork の場合は同時クライアント数 = サーバプロセス数なので</transnote>。
757     <module>worker</module> MPM の場合には、このディレクティブは
758     <directive module="mpm_common">ThreadLimit</directive>
759     ディレクティブと組み合わせて、
760     Apache プロセス稼働中における
761     <directive module="mpm_common">MaxClients</directive>
762     に設定可能な上限値を設定することになります。
763     このディレクティブを変更して再起動<transnote>apachectl
764     restart</transnote>しても無視されますが、
765     <directive module="mpm_common">MaxClients</directive>
766     は再起動で変更することができます。
767     </p>
768
769     <p>このディレクティブを使用する際は特に注意してください。
770     <directive>ServerLimit</directive> が必要以上に大きな値に
771     設定された場合は、余計な未使用共有メモリが割り当てられます。
772     <directive>ServerLimit</directive> と
773     <directive module="mpm_common">MaxClients</directive>
774     がシステムの扱える範囲を越えた設定値になっていると、
775     Apache は起動しないか、起動しても不安定になるでしょう。</p>
776
777     <p><module>prefork</module> MPM では、
778     <directive module="mpm_common">MaxClients</directive>
779     を 256 (デフォルト) よりも大きな値に設定する必要がある時にだけ使用してください。
780     希望の <directive module="mpm_common">MaxClients</directive>
781     数とくらべて、必要以上に大きな値を指定することは避けてください。</p>
782
783     <p><module>worker</module>, <module>leader</module>, 
784     <module>threadpool</module> MPM では、
785     <directive module="mpm_common">MaxClients</directive> と
786     <directive module="mpm_common">ThreadsPerChild</directive>
787     の設定で 16 サーバプロセス (デフォルト) 
788     以上必要になる場合にのみ使用してください。希望の
789     <directive module="mpm_common">MaxClients </directive> と
790     <directive module="mpm_common">ThreadsPerChild</directive>
791     とくらべて、必要となるサーバプロセス数以上に大きな値を
792     設定することは避けてください。</p>
793
794     <p><module>perchild</module> MPM では、
795     <directive module="perchild">NumServers</directive> を 8 (デフォルト)
796     よろいも大きな値に設定する必要があるときにのみ使用してください。</p>
797
798     <note><title>注意</title>
799       <p><code>ServerLimit 20000</code> という制限付きでコンパイルされています
800       (<module>prefork</module> MPM では <code>200000</code>) 。
801       これはスペルミスによって誤って酷い状況になるのを、
802       回避するための処置です。</p>
803     </note>
804 </usage>
805 <seealso><a href="../stopping.html">Apache の停止と再起動</a></seealso>
806 </directivesynopsis>
807
808 <directivesynopsis>
809 <name>StartServers</name>
810 <description>起動時に生成される子サーバプロセスの数</description>
811 <syntax>StartServers <var>number</var></syntax>
812 <default>詳細は使用方法を参照</default>
813 <contextlist><context>server config</context></contextlist>
814 <modulelist><module>leader</module><module>mpmt_os2</module>
815 <module>prefork</module><module>threadpool</module><module>worker</module>
816 </modulelist>
817
818 <usage>
819     <p><directive>StartServers</directive> ディレクティブは、
820     起動時に生成される子サーバプロセスの数を設定します。
821     プロセス数は負荷に応じて動的に制御されますので、
822     通常はこの値を調整する理由はあまりないでしょう。</p>
823
824     <p>デフォルト値は MPM ごとに異なります。
825     <module>leader</module>, <module>threadpool</module>, 
826     <module>worker</module> は <code>StartServers 3</code> です。
827     <module>prefork</module> は <code>5</code> で、
828     <module>mpmt_os2</module> は <code>2</code> です。</p>
829 </usage>
830 </directivesynopsis>
831
832 <directivesynopsis>
833 <name>StartThreads</name>
834 <description>起動時に生成されるスレッドの数</description>
835 <syntax>StartThreads <var>number</var></syntax>
836 <default>詳細は使用方法を参照</default>
837 <contextlist><context>server config</context></contextlist>
838 <modulelist><module>beos</module><module>mpm_netware</module>
839 <module>perchild</module></modulelist>
840
841 <usage>
842     <p>起動時に生成されるスレッドの数です。
843     スレッド数は負荷に応じて動的に制御されますので、
844     通常はこの値を調整する理由はあまりないでしょう。</p>
845
846     <p><module>perchild</module> でのデフォルトは
847     <code>StartThreads 5</code> で、このディレクティブは起動時に
848     プロセス毎のスレッド数を追跡します。</p>
849
850     <p><module>mpm_netware</module> でのデフォルトは
851     <code>StartThreads 50</code> で、
852     この場合プロセスは一つしかないので、
853     起動時にリクエストに応答するスレッドの総数となります。</p>
854
855     <p><module>beos</module> でのデフォルトは <code>StartThreads
856     10</code> です。
857     また、起動時に生成されるスレッドの総数にも反映されます。</p>
858 </usage>
859 </directivesynopsis>
860
861 <directivesynopsis>
862 <name>ThreadLimit</name>
863 <description>設定可能な子プロセス毎のスレッド数の上限を
864 設定します</description>
865 <syntax>ThreadLimit <var>number</var></syntax>
866 <default>詳細は使用方法を参照</default>
867 <contextlist><context>server config</context></contextlist>
868 <modulelist><module>leader</module><module>mpm_winnt</module>
869 <module>perchild</module><module>threadpool</module><module>worker</module>
870 </modulelist>
871 <compatibility>Apache 2.0.41 とそれ以降の <module>mpm_winnt</module> 
872 で利用可能</compatibility>
873
874 <usage>
875     <p>このディレクティブは
876     Apache プロセス稼働中における
877     <directive module="mpm_common">ThreadsPerChild</directive>
878     に設定可能な上限値を設定します。再起動時にこのディレクティブの値を
879     変更しても無視されますが、
880     <directive module="mpm_common">ThreadsPerChild</directive>
881     は再起動中に、このディレクティブで指定された上限値まで
882     変更することができます。</p>
883
884     <p>このディレクティブを使用する際は特に注意してください。
885     <directive>ThreadLimit</directive> が
886     <directive module="mpm_common">ThreadsPerChild</directive>
887     よりもずっと大きな値に設定された場合は、
888     余計な未使用共有メモリが割り当てられてしまいます。
889     <directive>ThreadLimit</directive> が
890     <directive module="mpm_common">ThreadsPerChild</directive>
891     の両方がシステムの扱える範囲を超えている場合は、
892     Apache は起動しないか、起動したとしても不安定になるでしょう。
893     このディレクティブの値は今使用している Apache の <directive
894     module="mpm_common">ThreadsPerChild</directive> の予想上限値を
895     超えた値には設定しないでください。
896     </p>
897
898     <p><directive>ThreadLimit</directive> のデフォルト値は
899     <module>mpm_winnt</module> のときは <code>1920</code> で、
900     他の場合は <code>64</code> です。</p>
901
902     <note><title>注意</title>
903       <p><code>ThreadLimit 20000</code> (<module>mpm_winnt</module>
904       の場合は <code>ThreadLimit 15000</code> )
905       という制限付きでコンパイルされています。
906       これはスペルミスによって誤って酷い状況になるのを、
907       回避するための処置です。</p>
908     </note>
909 </usage>
910 </directivesynopsis>
911
912 <directivesynopsis>
913 <name>ThreadsPerChild</name>
914 <description>子プロセスそれぞれに生成されるスレッド数</description>
915 <syntax>ThreadsPerChild <var>number</var></syntax>
916 <default>詳細は使用方法を参照</default>
917 <contextlist><context>server config</context></contextlist>
918 <modulelist><module>leader</module><module>mpm_winnt</module>
919 <module>threadpool</module><module>worker</module></modulelist>
920
921 <usage>
922     <p>このディレクティブは、それぞれの子プロセスで生成される
923     スレッド数を設定します。
924     子プロセスは開始時にこれらのスレッドを生成して、
925     その後は生成しません。<module>mpm_winnt</module> のような、
926     子プロセスが一つしかないような MPM を利用しているのであれば、
927     この値はサーバの負荷全体を十分取り扱える程度に、
928     大きくなければなりません。<module>worker</module> のような、
929     子プロセスが複数あるような MPM を利用しているのであれば、
930     サーバの通常負荷を十分扱える程度に、
931     <em>スレッド総数</em>が多くなければなりません。</p>
932
933     <p><module>mpm_winnt</module>での <directive>ThreadsPerChild</directive>
934     のデフォルト値は <code>64</code> で、他の場合は
935     <code>25</code> です。</p>
936 </usage>
937 </directivesynopsis>
938
939 <directivesynopsis>
940 <name>ThreadStackSize</name>
941 <description>クライアントのコネクションを受け持つスレッドが使用する
942 スタックのバイト数</description> 
943 <syntax>ThreadStackSize <var>size</var></syntax>
944 <default>NetWare では 65536。他の OS では違った値</default>
945 <contextlist><context>server config</context></contextlist>
946 <modulelist><module>leader</module><module>mpm_netware</module>
947 <module>mpm_winnt</module><module>perchild</module>
948 <module>threadpool</module><module>worker</module>
949 </modulelist>
950 <compatibility>2.1 以降</compatibility>
951
952 <usage>
953     <p>クライアントコネクションを受け持ち、コネクション処理に必要なモジュールの
954     呼び出しを行なっているスレッドの、(自動変数用の) スタックサイズは
955     <directive>ThreadStackSize</directive> ディレクティブで指定します。
956     大抵の場合 OS の指定しているスタックサイズのデフォルト値は
957     適切なものですが、調整が必要になる場合もあります:</p>
958
959     <ul>
960       <li>スレッドスタックサイズのデフォルト値が比較的小さく設定されている
961       プラットホーム (例えば HP-UX) では、自動変数用の領域で大きな容量を
962       使用するサードパーティ製モジュールのために Apache がクラッシュする
963       場合もあります。そのモジュールは他のプラットホームでは
964       スタックサイズが大きいために、快調に動作するかもしれません。
965       このタイプのクラッシュは、<directive>ThreadStackSize</directive>
966       で OS のデフォルト値より大きな値を指定することで解決します。
967       サードパーティ製モジュールでこの処置が必要であると記載されている
968       場合か、Apache の出力するメッセージでスレッドスタックサイズが
969       小さすぎると指摘されている場合にのみ、この調整をしてください。</li>
970
971       <li>デフォルトスレッドスタックサイズが、Web サーバ用途に必要な量よりも
972       明らかに大きすぎる場合、<directive>ThreadStackSize</directive> 
973       を OS のデフォルト値よりも小さな値にすることで、子プロセスあたりの
974       スレッド数をより多く持たせられるようになります。
975       このタイプの調整は、テスト環境でウェブサーバを完全に
976       テストできる場合に限って行なうべきです。
977       まれに多数のスタックが要求されるリクエストを受けることがあるかも
978       しれないからです。
979       Web サーバの設定を変更すると、現在の <directive>ThreadStackSize</directive> 
980       の設定が取り消される場合があります。</li>
981     </ul>
982 </usage>
983 </directivesynopsis>
984
985 <directivesynopsis>
986 <name>User</name>
987 <description>リクエストに応答する際に用いるユーザ ID</description>
988 <syntax>User <var>unix-userid</var></syntax>
989 <default>User #-1</default>
990 <contextlist><context>server config</context></contextlist>
991 <modulelist><module>leader</module><module>perchild</module>
992 <module>prefork</module><module>threadpool</module><module>worker</module>
993 </modulelist>
994 <compatibility>Apache 2.0 以降で、グローバル設定でのみ有効です。
995 </compatibility>
996
997 <usage>
998     <p><directive>User</directive> ディレクティブは
999     サーバがリクエストに応答する際に用いるユーザ ID を設定します。
1000     このディレクティブを使用するためには、スタンドアロン型の
1001     サーバは最初に <code>root</code> 権限で起動されている必要があります。
1002     非 root ユーザでサーバを起動した場合は、
1003     権限の低いユーザへと変わることができず、
1004     結局元のユーザのプロセスとして実行され続けます。
1005     <code>root</code> で起動した場合に親プロセスが root
1006     として実行されているのは正常な動作です。
1007     <var>Unix-userid</var> は次のどれかです。</p>
1008
1009     <dl>
1010       <dt>ユーザ名</dt>
1011       <dd>ユーザを名前で参照します。</dd>
1012
1013       <dt># に続いてユーザ番号</dt>
1014       <dd>ユーザを番号で参照します。</dd>
1015     </dl>
1016
1017     <p>このユーザは、外部に見せるように意図していないファイルに、
1018     アクセス可能になってしまうような権限を持つべきではないですし、
1019     同様に HTTP リクエストに対して応答するように意図していない
1020     実行コードを、実行できるような権限を持つべきではないです。
1021     サーバを実行するために特定の新しいユーザとグループを
1022     設定することをお薦めいたします。
1023     <code>nobody</code> ユーザを使用する管理者もいますが、
1024     これが常に望ましいわけではありません。
1025     なぜなら <code>nobody</code> ユーザは、システムで
1026     他の役割を担っているかも知れないからです。</p>
1027
1028     <note type="warning"><title>セキュリティ</title>
1029       <p>正確にどんなことをやっているのか、その危険性を知らないで、
1030       <directive>User</directive> (や <directive
1031       module="mpm_common">Group</directive>) を <code>root</code> に
1032       設定しないでください。</p>
1033     </note>
1034
1035     <p><module>perchild</module> MPM では、異なるユーザ ID
1036     で複数のバーチャルホストを動かすことを目的としていますが、
1037     <directive>User</directive> は、主サーバのユーザ ID 
1038     と、<directive module="perchild">AssignUserID</directive>
1039     ディレクティブを持たない <directive type="section"
1040     module="core">VirtualHost</directive> セクションへの
1041     フォールバックとを定義することになります。</p>
1042
1043     <p>特記事項: このディレクティブを
1044     <directive module="core" type="section">VirtualHost</directive>
1045     で使用することはサポートされなくなりました。
1046     <program>suexec</program> 向けにサーバを設定するのであれば、
1047     <directive module="mod_suexec">SuexecUserGroup</directive>
1048     を使用してください。</p>
1049
1050     <note><title>注意</title>
1051       <p><directive>User</directive> ディレクティブは
1052       <module>beos</module> と <module>mpmt_os2</module> MPM
1053       にも存在しますが、実質的に無効で、互換性のためだけに存在します。</p>
1054     </note>
1055 </usage>
1056 </directivesynopsis>
1057
1058 <directivesynopsis>
1059 <name>ChrootDir</name>
1060 <description>apache が起動後に chroot(8) するディレクトリ
1061 </description>
1062 <syntax>ChrootDir <var>/path/to/directory</var></syntax>
1063 <default>none</default>
1064 <contextlist><context>server config</context></contextlist>
1065 <modulelist><module>event</module>
1066 <module>prefork</module><module>worker</module></modulelist>
1067
1068 <usage>
1069     <p>このディレクティブは2.2.9(?)以降で利用できます。
1070     サーバ起動後、ネットからリクエストを受け付けるより前に、
1071     サーバは指定したディレクトリに <var>chroot(8)</var> します。</p>
1072     <p>chroot 環境下でサーバを動かすのは単純ではなく、
1073     特に CGI や PHP を動かしているなら、さらなるセットアップ
1074     が必要であることに注意してください。 この機能を使おうとする前に、
1075     chroot の動作を正しく理解しておくようにしてください。</p>
1076 </usage>
1077 </directivesynopsis>
1078
1079 </modulesynopsis>