9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<!DOCTYPE modulesynopsis SYSTEM "/style/modulesynopsis.dtd">
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<?xml-stylesheet type="text/xsl" href="/style/manual.ja.xsl"?>
0a05fab9aadd37834734ffe106fc8ad4488fb3e3rbowen<!-- English Revision: 674934:1673947 (outdated) -->
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding Licensed to the Apache Software Foundation (ASF) under one or more
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding contributor license agreements. See the NOTICE file distributed with
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding this work for additional information regarding copyright ownership.
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding The ASF licenses this file to You under the Apache License, Version 2.0
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding (the "License"); you may not use this file except in compliance with
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding the License. You may obtain a copy of the License at
d5d794fc2f4cc9ca6d6da17cfa2cdcd8d244bacdnd Unless required by applicable law or agreed to in writing, software
d5d794fc2f4cc9ca6d6da17cfa2cdcd8d244bacdnd distributed under the License is distributed on an "AS IS" BASIS,
d5d794fc2f4cc9ca6d6da17cfa2cdcd8d244bacdnd WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
d5d794fc2f4cc9ca6d6da17cfa2cdcd8d244bacdnd See the License for the specific language governing permissions and
d5d794fc2f4cc9ca6d6da17cfa2cdcd8d244bacdnd limitations under the License.
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>二つ以上のマルチプロセッシングモジュール (MPM)
208651a016b098f4fa1f6279559f104d70f1632dtakashiで実装されているディレクティブのコレクション</description>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>複数の子プロセスがネットワークソケットでリクエストを
208651a016b098f4fa1f6279559f104d70f1632dtakashiaccept しようとしているときに、Apache がそれらの子プロセスを直列化するために
208651a016b098f4fa1f6279559f104d70f1632dtakashi使う方法</description>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>leader</module><module>perchild</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>prefork</module><module>threadpool</module><module>worker</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki</modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi ネットワークソケットのリクエストを accept しようとしている複数の子プロセスを
208651a016b098f4fa1f6279559f104d70f1632dtakashi Apache が直列化するために使う方法(と必要ならロックファイルの場所)を設定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi Apache 2.0 以前は、このメソッドはコンパイル時にのみ選択できました。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 最適な方法は、アーキテクチャやプラットホームに大きく依存します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi ドキュメントをご覧下さい。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi に設定されていれば、コンパイル時に選択されたデフォルト値が使われます。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 他の使用可能なメソッドの一覧は下にあります。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 全てのメソッドが全てのプラットホームで使用可能であるわけではない、
208651a016b098f4fa1f6279559f104d70f1632dtakashi ということに注意してください。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 使用可能でないメソッドが指定された場合は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 使用可能なメソッドの一覧を含んだメッセージが
208651a016b098f4fa1f6279559f104d70f1632dtakashi エラーログに出力されます。</p>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai <dt><code>flock<<var>:/path/to/lockfile</var>></code></dt>
208651a016b098f4fa1f6279559f104d70f1632dtakashi パラメータで定義したファイルのロックに、
208651a016b098f4fa1f6279559f104d70f1632dtakashi ロックファイルの指定には <directive module="mpm_common">LockFile</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi ディレクティブを使うことも出来ます(非推奨です)。</dd>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai <dt><code>fcntl<<var>:/path/to/lockfile</var>></code></dt>
208651a016b098f4fa1f6279559f104d70f1632dtakashi パラメータで定義したファイルのロックに、
208651a016b098f4fa1f6279559f104d70f1632dtakashi ロックファイルの指定には <directive module="mpm_common">LockFile</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi ディレクティブを使うことも出来ます(非推奨です)。</dd>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai <dt><code>file<<var>:/path/to/lockfile</var>></code></dt>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <dd>使用できるファイルロックルーチンの中で最適なものを使います。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 一つをサポートしている場合のみ使用可能です。</dd>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <dd>使用できるセマフォルーチンの中で最適なものを使います。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 具体的には、Posix 互換セマフォが使用可能な場合はそれを使い、そうでない場合は
208651a016b098f4fa1f6279559f104d70f1632dtakashi SystemV IPC 形式のセマフォを試します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 一つをサポートしている場合のみ使用可能です。</dd>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <dd>POSIX Threads (PThreads) 規格で実装されている
208651a016b098f4fa1f6279559f104d70f1632dtakashi POSIX 排他処理を使います。</dd>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>コンパイル時にシステムのデフォルトに選ばれたものが何かを見たい場合は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi <directive module="core">LogLevel</directive> を <code>debug</code>
208651a016b098f4fa1f6279559f104d70f1632dtakashi に設定するとよいでしょう。デフォルトの <directive>AcceptMutex</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi が <directive module="core">ErrorLog</directive> に書き込まれます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi 保持しているときに異常終了した場合、サーバはリクエストへの応答を
208651a016b098f4fa1f6279559f104d70f1632dtakashi 停止してしまいます。これが発生した場合は、サーバを復旧させるためには
208651a016b098f4fa1f6279559f104d70f1632dtakashi 手動で再起動させる必要があります。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>Solaris は例外で、Apache も使用している、子プロセスが mutex を
208651a016b098f4fa1f6279559f104d70f1632dtakashi 保持して異常終了した後に mutex を復旧させるための機構を提供をしています。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>御使用のシステムが <code>pthread_mutexattr_setrobust_np()</code> 関数を
208651a016b098f4fa1f6279559f104d70f1632dtakashi 可能性があります。</p>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>Apache がコアダンプする前に移動を試みるディレクトリ
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</description>
d1c4d2f51490a4eafe8ef311aec145fb2864f07byoshiki<syntax>CoreDumpDirectory <var>directory</var></syntax>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>mpm_winnt</module><module>perchild</module><module>prefork</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>threadpool</module><module>worker</module></modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>Apache がコアダンプする前に移動を試みるディレクトリを制御します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi デフォルト値は <directive module="core">ServerRoot</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi ディレクトリですが、このディレクトリはサーバの実行されているユーザ権限で
208651a016b098f4fa1f6279559f104d70f1632dtakashi 書き込み可能であるべきではないので、通常はコアダンプは書き込まれません。
208651a016b098f4fa1f6279559f104d70f1632dtakashi デバッグのためにコアダンプが必要であれば、
208651a016b098f4fa1f6279559f104d70f1632dtakashi このディレクティブを使って他の位置にコアダンプを書き出すようにできます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>Apache が root として起動されて、別のユーザの権限に以降した場合は
208651a016b098f4fa1f6279559f104d70f1632dtakashi Linux のカーネルはディレクトリがプロセスの権限で書き込み可能な場合でさえも
208651a016b098f4fa1f6279559f104d70f1632dtakashi Linux 2.4 以降ではコアダンプを行なうように再指定しますが、それは
208651a016b098f4fa1f6279559f104d70f1632dtakashi <directive>CoreDumpDirectory</directive> を明示的に設定したときに
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
2ac75968bb258bcade230d943c21a7206e16e96ekawai<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>クラッシュの後に例外ハンドラを実行するフックを有効にする</description>
2ac75968bb258bcade230d943c21a7206e16e96ekawai<contextlist><context>server config</context></contextlist>
2ac75968bb258bcade230d943c21a7206e16e96ekawai<modulelist><module>leader</module><module>perchild</module>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>安全上の理由から、<code>--enable-exception-hook</code> configure
208651a016b098f4fa1f6279559f104d70f1632dtakashi オプションを有効にした場合にのみ、このディレクティブを利用できます。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 外部モジュールをプラグインして、子がクラッシュした後に何か実行できるような
208651a016b098f4fa1f6279559f104d70f1632dtakashi フックを有効にします。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>このような外部モジュールは、既に二つ存在していて、
208651a016b098f4fa1f6279559f104d70f1632dtakashi <code>mod_whatkilledus</code> と <code>mod_backtrace</code>
208651a016b098f4fa1f6279559f104d70f1632dtakashi がこのフックを活用します。これらの詳細については Jeff Trawick
208651a016b098f4fa1f6279559f104d70f1632dtakashi さんの <a href="http://www.apache.org/~trawick/exception_hook.html"
2ac75968bb258bcade230d943c21a7206e16e96ekawai</directivesynopsis>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai<directivesynopsis>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai<syntax>GracefulShutDownTimeout <var>seconds</var></syntax>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai<contextlist><context>server config</context></contextlist>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai<modulelist><module>prefork</module><module>worker</module>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><directive>GracefulShutdownTimeout</directive> には
208651a016b098f4fa1f6279559f104d70f1632dtakashi サーバーが "graceful-stop" シグナルを受け取ってから現在の
208651a016b098f4fa1f6279559f104d70f1632dtakashi リクエストの処理を最大で何秒間続けるかを指定します。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>この値をゼロに設定すると、処理中として残っているリクエストが
208651a016b098f4fa1f6279559f104d70f1632dtakashi 全て完了するまでサーバーは終了しません。</p>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>mpmt_os2</module><module>perchild</module><module>prefork</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>threadpool</module><module>worker</module></modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<compatibility>Apache 2.0 以降で、グローバル設定でのみ有効です。</compatibility>
208651a016b098f4fa1f6279559f104d70f1632dtakashi リクエストに応答する際に所属しておくグループを設定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi このディレクティブを使用するためには、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 非 root ユーザでサーバを起動した場合は、指定したグループに変化できずに、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 結果的に起動したユーザの属するグループで実行されることになります。
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki Group www-group
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>サーバを実行するために特定の新しいグループを設定することを
208651a016b098f4fa1f6279559f104d70f1632dtakashi 可能であったり望ましい訳では必ずしもありません。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>正確にどんなことをやっているのか、その危険性を知らないで、
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>特記事項: このディレクティブを
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <directive module="core" type="section">VirtualHost</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi で使用することはサポートされなくなりました。Apache 2.0 で
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mod_suexec">SuexecUserGroup</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi を使用してください。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <module>beos</module> と <module>mpmt_os2</module> MPM
208651a016b098f4fa1f6279559f104d70f1632dtakashi にも存在しますが、実質的に無効で、互換性のためだけに存在します。</p>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>デーモンのプロセス ID
208651a016b098f4fa1f6279559f104d70f1632dtakashiをサーバが記録するためのファイル</description>
5cc6d9e773d97b5e223be09bbcaea1dc34f3bf1akawai<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>threadpool</module><module>worker</module></modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi デーモンのプロセス ID をサーバが記録するファイルを設定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi ファイル名が絶対パスでない場合は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi からの相対的なものとして扱われます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>サーバが <directive module="core">ErrorLog</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi や <directive module="mod_log_config">TransferLog</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi を閉じて開き直したり、設定ファイルを
208651a016b098f4fa1f6279559f104d70f1632dtakashi 再読込したりさせるために、サーバにシグナルを送ることができると
208651a016b098f4fa1f6279559f104d70f1632dtakashi 便利なことがあります。
208651a016b098f4fa1f6279559f104d70f1632dtakashi これは SIGHUP (kill -1) シグナルを <directive>PidFile</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi に書かれているプロセス ID に送ることでできます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <a href="/misc/security_tips.html#serverroot">セキュリティ</a>
208651a016b098f4fa1f6279559f104d70f1632dtakashi と全く同じ注意点があります。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>Apache 2 では、
208651a016b098f4fa1f6279559f104d70f1632dtakashi スクリプトのみを使用してサーバの (再) 起動や停止を
208651a016b098f4fa1f6279559f104d70f1632dtakashi 行なうことを推奨しています。</p>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>サーバが listen するIP アドレスとポート番号</description>
5cc6d9e773d97b5e223be09bbcaea1dc34f3bf1akawai<syntax>Listen [<var>IP-address</var>:]<var>portnumber</var> [<var>protocol</var>]</syntax>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>mpm_netware</module><module>mpm_winnt</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>prefork</module><module>threadpool</module><module>worker</module>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<compatibility>Apache 2.0 から必須ディレクティブ。<var>protocol</var>
208651a016b098f4fa1f6279559f104d70f1632dtakashi引数は 2.1.5 で追加。</compatibility>
208651a016b098f4fa1f6279559f104d70f1632dtakashi が特定の IP アドレスやポート番号だけを listen するように指定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi デフォルトでは全ての IP インターフェースのリクエストに応答します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 現在は必須のディレクティブとなりました。
208651a016b098f4fa1f6279559f104d70f1632dtakashi もし設定ファイルになければ、サーバは起動に失敗します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi これは以前のバージョンの Apache から変更のあった部分です。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><directive>Listen</directive> ディレクティブでは、特定のポートあるいは
208651a016b098f4fa1f6279559f104d70f1632dtakashi アドレスとポートの組み合わせから入ってくるリクエストに対して
208651a016b098f4fa1f6279559f104d70f1632dtakashi 応答するように指定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi もしポート番号だけが指定された場合は、サーバは全インターフェースの
208651a016b098f4fa1f6279559f104d70f1632dtakashi 指定されたポート番号に対して listen します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi IP アドレスがポートとともに指定された場合は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi サーバは指定されたポートとインターフェースに対して listen
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>複数のアドレスとポートに対して listen するように、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 複数の <directive>Listen</directive> ディレクティブを使うこともできます。
208651a016b098f4fa1f6279559f104d70f1632dtakashi サーバは列挙されたアドレスとポート全てからのリクエストに対して
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>例えば、サーバが 80 番ポートと 8000 番ポートの両方の
208651a016b098f4fa1f6279559f104d70f1632dtakashi コネクションを受け入れる場合は、次のようにします。</p>
d1c4d2f51490a4eafe8ef311aec145fb2864f07byoshiki Listen 80<br />
d1c4d2f51490a4eafe8ef311aec145fb2864f07byoshiki Listen 8000
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>二つの特定のインターフェースとポート番号からのコネクションを
208651a016b098f4fa1f6279559f104d70f1632dtakashi 受け入れるようにするには、次のようにします。</p>
d1c4d2f51490a4eafe8ef311aec145fb2864f07byoshiki Listen 192.170.2.1:80<br />
d1c4d2f51490a4eafe8ef311aec145fb2864f07byoshiki Listen 192.170.2.5:8000
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>IPv6 アドレスは角括弧で囲まなければなりません。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 例えば次の例のようにです。</p>
cf02129aebf73dd0bdf369b172eb481ff76ac5f6colm Listen [2001:db8::a00:20ff:fea7:ccea]:80
208651a016b098f4fa1f6279559f104d70f1632dtakashi protocol 指定は、どのモジュールがリクエストを処理するかを決定し、
208651a016b098f4fa1f6279559f104d70f1632dtakashi によるプロトコル特有の最適化を行うようにします。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>非標準なポートで運用している際にのみ protocol 指定が必要になります。
208651a016b098f4fa1f6279559f104d70f1632dtakashi たとえば <code>https</code> なサイトを 8443 番ポートで運用している場合 :</p>
5cc6d9e773d97b5e223be09bbcaea1dc34f3bf1akawai Listen 192.170.2.1:8443 https
208651a016b098f4fa1f6279559f104d70f1632dtakashi ディレクティブを指定してしまうと、<code>Address already in use</code>
208651a016b098f4fa1f6279559f104d70f1632dtakashi というエラーメッセージを受けることになります。
208651a016b098f4fa1f6279559f104d70f1632dtakashi<seealso><a href="/dns-caveats.html">DNS の問題</a></seealso>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>mpm_netware</module><module>mpm_winnt</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>mpmt_os2</module><module>perchild</module><module>prefork</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>threadpool</module><module>worker</module></modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>保留状態のコネクションのキューの最大長です。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 一般的には調整する必要はありませんし、調整は望ましくありません。
208651a016b098f4fa1f6279559f104d70f1632dtakashi しかし、TCP SYN フラッドアタックの状況下におかれる場合に、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 増やした方が望ましいシステムもあります。
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>この値は OS により、小さな数に抑えられます。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 値は OS 毎に異なっています。また多くの OS では、
208651a016b098f4fa1f6279559f104d70f1632dtakashi バックログとして指定されている値ちょうどまで使っているわけではなく、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 設定されている値に基づいて (通常は設定値よりも大きな値を)
208651a016b098f4fa1f6279559f104d70f1632dtakashi 使っていることに注意してください。</p>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>受付を直列化するためのロックファイルの位置<em>(非推奨)</em></description>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>leader</module><module>perchild</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>prefork</module><module>threadpool</module><module>worker</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki</modulelist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <p><directive module="mpm_common">AcceptMutex</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi に設定されて使用されている場合に、使用されるロックファイルへのパスを
208651a016b098f4fa1f6279559f104d70f1632dtakashi このディレクティブは通常はそのままにしておきます。
208651a016b098f4fa1f6279559f104d70f1632dtakashi でマウントされている場合などに値を変えます。
208651a016b098f4fa1f6279559f104d70f1632dtakashi なぜなら<strong>ロックファイルはローカルディスクに
208651a016b098f4fa1f6279559f104d70f1632dtakashi 保存されなければならない</strong>からです。
208651a016b098f4fa1f6279559f104d70f1632dtakashi メインサーバプロセスの PID がファイル名に自動的に付加されます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi といった、誰でも書き込めるディレクトリにファイルを
208651a016b098f4fa1f6279559f104d70f1632dtakashi ロックファイルの作成自体を妨害することによって、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 誰でもサービス拒否アタックを引き起こすことができるからです。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi ディレクティブで排他処理の方法の指定とともにロックファイルの場所も指定してください。</p>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<seealso><directive module="mpm_common">AcceptMutex</directive></seealso>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>リクエストに応答するために作成される
208651a016b098f4fa1f6279559f104d70f1632dtakashi子プロセスの最大個数</description>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>prefork</module><module>threadpool</module><module>worker</module>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi 応答することのできる同時リクエスト数を設定します。
ccdc5ea83d4104e3bde178caf8011466523c7e7cyoshiki <directive module="mpm_common">ListenBacklog</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi ディレクティブで設定した数までキューに入ります。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 他のリクエストの最後まで達して子プロセスが空くと、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 次のコネクションに応答します。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>スレッドを用いないサーバ (<em>すなわち</em> <module>prefork</module>)
208651a016b098f4fa1f6279559f104d70f1632dtakashi は、リクエストに応答するために起動される
208651a016b098f4fa1f6279559f104d70f1632dtakashi 子プロセスの最大数となります。
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">ServerLimit</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi の値も増加させる必要があります。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi は、クライアントに応答できるスレッドの総数を制限します。
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <directive module="mpm_common">ServerLimit</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi module="mpm_common">ThreadsPerChild</directive>) です。
208651a016b098f4fa1f6279559f104d70f1632dtakashi を 16 プロセス以上必要な値まで増加させたい場合は、
ccdc5ea83d4104e3bde178caf8011466523c7e7cyoshiki <directive module="mpm_common">ServerLimit</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi も増加させる必要があります。</p>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
7503d8e3527e526884c5d43943d0479c557fc660yoshiki<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi主メモリアロケータが保持し続けられるメモリの最大量</description>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
8586c281411240cf582bbd086daefdb3b3cc64d6yoshiki<module>threadpool</module><module>worker</module><module>mpm_winnt</module></modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi 主アロケータが保持できる空のメモリの最大値をキロバイト単位で設定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 設定されていないか、零に設定されているときは、無制限になります。</p>
7503d8e3527e526884c5d43943d0479c557fc660yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
d1c4d2f51490a4eafe8ef311aec145fb2864f07byoshiki<syntax>MaxRequestsPerChild <var>number</var></syntax>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>leader</module><module>mpm_netware</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>threadpool</module><module>worker</module></modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><directive>MaxRequestsPerChild</directive> ディレクティブは、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 個々の子サーバプロセスが扱うことのできるリクエストの制限数を
208651a016b098f4fa1f6279559f104d70f1632dtakashi 個のリクエストの後に、子プロセスは終了します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi <directive>MaxRequestsPerChild</directive> が <code>0</code>
208651a016b098f4fa1f6279559f104d70f1632dtakashi に設定されている場合は、プロセスは期限切れにより終了することはありません。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><module>mpm_netware</module> と <module>mpm_winnt</module>
260825e232915f39b00a6f72c7c0af321a1694e6kawai を非ゼロにすることにより、(偶発的な) メモリーリークが起こった場合に
260825e232915f39b00a6f72c7c0af321a1694e6kawai プロセスが消費するメモリの総量を制限できます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><directive module="core">KeepAlive</directive> リクエストの場合は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 一つ目のリクエストだけがこの制限に該当します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 制限するように挙動が変化します。</p>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>mpm_netware</module><module>mpmt_os2</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>perchild</module><module>threadpool</module><module>worker</module>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>アイドルなスレッドの最大数です。異なる MPM ではそれぞれ、
208651a016b098f4fa1f6279559f104d70f1632dtakashi このディレクティブは異なる取り扱われ方をされます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi この MPM はアイドルスレッド数を、それぞれの子プロセスごとに監視します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 子プロセスにアイドルスレッドが多すぎる場合は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi サーバはその子プロセスに含まれるスレッドを終了し始めます。</p>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <p><module>worker</module>, <module>leader</module>,
208651a016b098f4fa1f6279559f104d70f1632dtakashi この MPM はアイドルスレッド数をサーバ全体で監視します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi サーバでアイドルスレッド数が多すぎる場合は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi この数字よりも少ない数になるまで子プロセスを終了します。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi この MPM はシングルプロセスで実行されますので、
208651a016b098f4fa1f6279559f104d70f1632dtakashi スペアスレッド数もサーバ全体で勘定します。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><module>beos</module> と <module>mpmt_os2</module> は
208651a016b098f4fa1f6279559f104d70f1632dtakashi <module>beos</module> でのデフォルト値は <code>MaxSpareThreads 50</code>
208651a016b098f4fa1f6279559f104d70f1632dtakashi です。<module>mpmt_os2</module> でのデフォルト値は <code>10</code>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><directive>MaxSpareThreads</directive> の取る値には制限があります。
208651a016b098f4fa1f6279559f104d70f1632dtakashi Apache は次の規則に従って自動的に補正します。</p>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <directive module="mpm_common">ThreadLimit</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi と等しいかそれ以下である必要があります。</li>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <directive module="mpm_common">MinSpareThreads</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi よりも大きい必要があります。</li>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <li><module>leader</module>, <module>threadpool</module>,
208651a016b098f4fa1f6279559f104d70f1632dtakashi <directive module="mpm_common">MinSpareThreads</directive> と
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <directive module="mpm_common">ThreadsPerChild</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi で決まる総和と等しいか大きい必要があります。</li>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<seealso><directive module="mpm_common">MinSpareThreads</directive></seealso>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<seealso><directive module="mpm_common">StartServers</directive></seealso>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>リクエストに応答することのできる
208651a016b098f4fa1f6279559f104d70f1632dtakashiアイドルスレッド数の最小数</description>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>mpm_netware</module><module>mpmt_os2</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>perchild</module><module>threadpool</module><module>worker</module>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>リクエストに応答するスレッド数の最小値です。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 異なる MPM ではそれぞれ、
208651a016b098f4fa1f6279559f104d70f1632dtakashi このディレクティブは異なる取り扱われ方をします。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi アイドルスレッド数を子プロセス毎に監視します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi もし子プロセスに十分な数のスレッドがなければ、
208651a016b098f4fa1f6279559f104d70f1632dtakashi サーバはその子プロセスに新しいスレッドを作り始めます。
208651a016b098f4fa1f6279559f104d70f1632dtakashi ですから、<directive module="perchild">NumServers</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi を <code>10</code> に、<directive>MinSpareThreads</directive> を
208651a016b098f4fa1f6279559f104d70f1632dtakashi システム上にあることになります。</p>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <p><module>worker</module>, <module>leader</module>,
208651a016b098f4fa1f6279559f104d70f1632dtakashi アイドルスレッド数をサーバ全体で監視します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi もしサーバに十分な数のアイドルスレッドがなければ、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 新しい子プロセスが生成されます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi シングルプロセス MPM ですので、サーバ全体で管理されます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><module>beos</module> と <module>mpmt_os2</module> は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi <module>beos</module> でのデフォルトは <code>MinSpareThreads 1</code>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<seealso><directive module="mpm_common">MaxSpareThreads</directive></seealso>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<seealso><directive module="mpm_common">StartServers</directive></seealso>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>子プロセスと連携するためのデータを保存する
208651a016b098f4fa1f6279559f104d70f1632dtakashiファイルの位置</description>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>mpm_winnt</module><module>perchild</module><module>prefork</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>threadpool</module><module>worker</module></modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>Apache は親プロセスと子プロセス間の通信にスコアボードを用います。
208651a016b098f4fa1f6279559f104d70f1632dtakashi この通信機能にファイルを必要とするアーキテクチャもあります。
208651a016b098f4fa1f6279559f104d70f1632dtakashi ファイルが指定されていなければ、Apache はまずメモリ上
208651a016b098f4fa1f6279559f104d70f1632dtakashi (匿名共有メモリ) にスコアボードを作ろうとし、それが失敗すると
208651a016b098f4fa1f6279559f104d70f1632dtakashi ディスク上にファイル (ファイルベースの共有メモリ) を作ろうとします。
208651a016b098f4fa1f6279559f104d70f1632dtakashi このディレクティブを指定すると、Apache
208651a016b098f4fa1f6279559f104d70f1632dtakashi は必ずディスクにファイルを生成します。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>ファイルベースの共有メモリは、サードパーティー製のアプリケーションで
208651a016b098f4fa1f6279559f104d70f1632dtakashi スコアボードに直接アクセスする必要がある場合に役に立ちます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi RAM ディスク上に置くとスピードが向上するでしょう。
208651a016b098f4fa1f6279559f104d70f1632dtakashi しかし、ログファイルの設置位置や
208651a016b098f4fa1f6279559f104d70f1632dtakashi と同様の注意点があるので、注意してください。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<seealso><a href="/stopping.html">Apache の停止と再起動</a></seealso>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai<directivesynopsis>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai<contextlist><context>server config</context></contextlist>
0fede0a7a4176c35dce6e0ecccf0436030975330kawai</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>leader</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>mpm_netware</module><module>mpm_winnt</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>mpmt_os2</module><module>perchild</module><module>prefork</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>threadpool</module><module>worker</module></modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>サーバは TCP 送信バッファサイズを指定されたバイト数に設定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 高速で高レイテンシな環境で
208651a016b098f4fa1f6279559f104d70f1632dtakashi 古い一般的な OS のデフォルト値を増やすのに非常に便利です。</p>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>leader</module><module>perchild</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>prefork</module><module>threadpool</module><module>worker</module>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi Apache プロセス稼働中における
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">MaxClients</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi に設定可能な上限値を設定することになります
282de0c1632127ac7c9e0b818172f5e9f324409btakashi <transnote>prefork の場合は同時クライアント数 = サーバプロセス数なので</transnote>。
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">ThreadLimit</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi ディレクティブと組み合わせて、
208651a016b098f4fa1f6279559f104d70f1632dtakashi Apache プロセス稼働中における
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">MaxClients</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi に設定可能な上限値を設定することになります。
282de0c1632127ac7c9e0b818172f5e9f324409btakashi このディレクティブを変更して再起動<transnote>apachectl
282de0c1632127ac7c9e0b818172f5e9f324409btakashi restart</transnote>しても無視されますが、
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">MaxClients</directive>
282de0c1632127ac7c9e0b818172f5e9f324409btakashi は再起動で変更することができます。
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>このディレクティブを使用する際は特に注意してください。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 設定された場合は、余計な未使用共有メモリが割り当てられます。
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">MaxClients</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi がシステムの扱える範囲を越えた設定値になっていると、
208651a016b098f4fa1f6279559f104d70f1632dtakashi Apache は起動しないか、起動しても不安定になるでしょう。</p>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">MaxClients</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi を 256 (デフォルト) よりも大きな値に設定する必要がある時にだけ使用してください。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 希望の <directive module="mpm_common">MaxClients</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi 数とくらべて、必要以上に大きな値を指定することは避けてください。</p>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <p><module>worker</module>, <module>leader</module>,
208651a016b098f4fa1f6279559f104d70f1632dtakashi <directive module="mpm_common">MaxClients</directive> と
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">ThreadsPerChild</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi の設定で 16 サーバプロセス (デフォルト)
208651a016b098f4fa1f6279559f104d70f1632dtakashi 以上必要になる場合にのみ使用してください。希望の
208651a016b098f4fa1f6279559f104d70f1632dtakashi <directive module="mpm_common">MaxClients </directive> と
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">ThreadsPerChild</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi とくらべて、必要となるサーバプロセス数以上に大きな値を
208651a016b098f4fa1f6279559f104d70f1632dtakashi 設定することは避けてください。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <directive module="perchild">NumServers</directive> を 8 (デフォルト)
208651a016b098f4fa1f6279559f104d70f1632dtakashi よろいも大きな値に設定する必要があるときにのみ使用してください。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><code>ServerLimit 20000</code> という制限付きでコンパイルされています
208651a016b098f4fa1f6279559f104d70f1632dtakashi (<module>prefork</module> MPM では <code>200000</code>) 。
208651a016b098f4fa1f6279559f104d70f1632dtakashi これはスペルミスによって誤って酷い状況になるのを、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 回避するための処置です。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<seealso><a href="/stopping.html">Apache の停止と再起動</a></seealso>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>leader</module><module>mpmt_os2</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>prefork</module><module>threadpool</module><module>worker</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki</modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi 起動時に生成される子サーバプロセスの数を設定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi プロセス数は負荷に応じて動的に制御されますので、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 通常はこの値を調整する理由はあまりないでしょう。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>デフォルト値は MPM ごとに異なります。
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <module>leader</module>, <module>threadpool</module>,
208651a016b098f4fa1f6279559f104d70f1632dtakashi <module>worker</module> は <code>StartServers 3</code> です。
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>beos</module><module>mpm_netware</module>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>起動時に生成されるスレッドの数です。
208651a016b098f4fa1f6279559f104d70f1632dtakashi スレッド数は負荷に応じて動的に制御されますので、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 通常はこの値を調整する理由はあまりないでしょう。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi プロセス毎のスレッド数を追跡します。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi この場合プロセスは一つしかないので、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 起動時にリクエストに応答するスレッドの総数となります。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><module>beos</module> でのデフォルトは <code>StartThreads
208651a016b098f4fa1f6279559f104d70f1632dtakashi 10</code> です。
208651a016b098f4fa1f6279559f104d70f1632dtakashi また、起動時に生成されるスレッドの総数にも反映されます。</p>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>設定可能な子プロセス毎のスレッド数の上限を
208651a016b098f4fa1f6279559f104d70f1632dtakashi設定します</description>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>leader</module><module>mpm_winnt</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>perchild</module><module>threadpool</module><module>worker</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki</modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<compatibility>Apache 2.0.41 とそれ以降の <module>mpm_winnt</module>
208651a016b098f4fa1f6279559f104d70f1632dtakashiで利用可能</compatibility>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>このディレクティブは
208651a016b098f4fa1f6279559f104d70f1632dtakashi Apache プロセス稼働中における
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">ThreadsPerChild</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi に設定可能な上限値を設定します。再起動時にこのディレクティブの値を
208651a016b098f4fa1f6279559f104d70f1632dtakashi 変更しても無視されますが、
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">ThreadsPerChild</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi は再起動中に、このディレクティブで指定された上限値まで
208651a016b098f4fa1f6279559f104d70f1632dtakashi 変更することができます。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>このディレクティブを使用する際は特に注意してください。
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">ThreadsPerChild</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi よりもずっと大きな値に設定された場合は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 余計な未使用共有メモリが割り当てられてしまいます。
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mpm_common">ThreadsPerChild</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi の両方がシステムの扱える範囲を超えている場合は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi Apache は起動しないか、起動したとしても不安定になるでしょう。
208651a016b098f4fa1f6279559f104d70f1632dtakashi このディレクティブの値は今使用している Apache の <directive
208651a016b098f4fa1f6279559f104d70f1632dtakashi module="mpm_common">ThreadsPerChild</directive> の予想上限値を
208651a016b098f4fa1f6279559f104d70f1632dtakashi 超えた値には設定しないでください。
208651a016b098f4fa1f6279559f104d70f1632dtakashi <module>mpm_winnt</module> のときは <code>1920</code> で、
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki <p><code>ThreadLimit 20000</code> (<module>mpm_winnt</module>
208651a016b098f4fa1f6279559f104d70f1632dtakashi という制限付きでコンパイルされています。
208651a016b098f4fa1f6279559f104d70f1632dtakashi これはスペルミスによって誤って酷い状況になるのを、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 回避するための処置です。</p>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
9dca5c120b818e1c51dbbb6c658d95a9f91b524cyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>leader</module><module>mpm_winnt</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>threadpool</module><module>worker</module></modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>このディレクティブは、それぞれの子プロセスで生成される
208651a016b098f4fa1f6279559f104d70f1632dtakashi スレッド数を設定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 子プロセスは開始時にこれらのスレッドを生成して、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 子プロセスが一つしかないような MPM を利用しているのであれば、
208651a016b098f4fa1f6279559f104d70f1632dtakashi この値はサーバの負荷全体を十分取り扱える程度に、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 子プロセスが複数あるような MPM を利用しているのであれば、
208651a016b098f4fa1f6279559f104d70f1632dtakashi サーバの通常負荷を十分扱える程度に、
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p><module>mpm_winnt</module>での <directive>ThreadsPerChild</directive>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
2ac75968bb258bcade230d943c21a7206e16e96ekawai<directivesynopsis>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<description>クライアントのコネクションを受け持つスレッドが使用する
208651a016b098f4fa1f6279559f104d70f1632dtakashiスタックのバイト数</description>
2ac75968bb258bcade230d943c21a7206e16e96ekawai<contextlist><context>server config</context></contextlist>
2ac75968bb258bcade230d943c21a7206e16e96ekawai<modulelist><module>leader</module><module>mpm_netware</module>
2ac75968bb258bcade230d943c21a7206e16e96ekawai</modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>クライアントコネクションを受け持ち、コネクション処理に必要なモジュールの
208651a016b098f4fa1f6279559f104d70f1632dtakashi 呼び出しを行なっているスレッドの、(自動変数用の) スタックサイズは
208651a016b098f4fa1f6279559f104d70f1632dtakashi <directive>ThreadStackSize</directive> ディレクティブで指定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 大抵の場合 OS の指定しているスタックサイズのデフォルト値は
208651a016b098f4fa1f6279559f104d70f1632dtakashi 適切なものですが、調整が必要になる場合もあります:</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <li>スレッドスタックサイズのデフォルト値が比較的小さく設定されている
208651a016b098f4fa1f6279559f104d70f1632dtakashi プラットホーム (例えば HP-UX) では、自動変数用の領域で大きな容量を
208651a016b098f4fa1f6279559f104d70f1632dtakashi 使用するサードパーティ製モジュールのために Apache がクラッシュする
208651a016b098f4fa1f6279559f104d70f1632dtakashi 場合もあります。そのモジュールは他のプラットホームでは
208651a016b098f4fa1f6279559f104d70f1632dtakashi スタックサイズが大きいために、快調に動作するかもしれません。
208651a016b098f4fa1f6279559f104d70f1632dtakashi で OS のデフォルト値より大きな値を指定することで解決します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi サードパーティ製モジュールでこの処置が必要であると記載されている
208651a016b098f4fa1f6279559f104d70f1632dtakashi 場合か、Apache の出力するメッセージでスレッドスタックサイズが
208651a016b098f4fa1f6279559f104d70f1632dtakashi 小さすぎると指摘されている場合にのみ、この調整をしてください。</li>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <li>デフォルトスレッドスタックサイズが、Web サーバ用途に必要な量よりも
208651a016b098f4fa1f6279559f104d70f1632dtakashi を OS のデフォルト値よりも小さな値にすることで、子プロセスあたりの
208651a016b098f4fa1f6279559f104d70f1632dtakashi スレッド数をより多く持たせられるようになります。
208651a016b098f4fa1f6279559f104d70f1632dtakashi このタイプの調整は、テスト環境でウェブサーバを完全に
208651a016b098f4fa1f6279559f104d70f1632dtakashi テストできる場合に限って行なうべきです。
208651a016b098f4fa1f6279559f104d70f1632dtakashi まれに多数のスタックが要求されるリクエストを受けることがあるかも
208651a016b098f4fa1f6279559f104d70f1632dtakashi Web サーバの設定を変更すると、現在の <directive>ThreadStackSize</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi の設定が取り消される場合があります。</li>
2ac75968bb258bcade230d943c21a7206e16e96ekawai</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki<directivesynopsis>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<contextlist><context>server config</context></contextlist>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<modulelist><module>leader</module><module>perchild</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki<module>prefork</module><module>threadpool</module><module>worker</module>
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki</modulelist>
208651a016b098f4fa1f6279559f104d70f1632dtakashi<compatibility>Apache 2.0 以降で、グローバル設定でのみ有効です。
085267ffe023e17209a374ec5ff2a27bd3381afcyoshiki</compatibility>
208651a016b098f4fa1f6279559f104d70f1632dtakashi サーバがリクエストに応答する際に用いるユーザ ID を設定します。
208651a016b098f4fa1f6279559f104d70f1632dtakashi このディレクティブを使用するためには、スタンドアロン型の
208651a016b098f4fa1f6279559f104d70f1632dtakashi 非 root ユーザでサーバを起動した場合は、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 権限の低いユーザへと変わることができず、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 結局元のユーザのプロセスとして実行され続けます。
208651a016b098f4fa1f6279559f104d70f1632dtakashi として実行されているのは正常な動作です。
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>このユーザは、外部に見せるように意図していないファイルに、
208651a016b098f4fa1f6279559f104d70f1632dtakashi アクセス可能になってしまうような権限を持つべきではないですし、
208651a016b098f4fa1f6279559f104d70f1632dtakashi 同様に HTTP リクエストに対して応答するように意図していない
208651a016b098f4fa1f6279559f104d70f1632dtakashi 実行コードを、実行できるような権限を持つべきではないです。
208651a016b098f4fa1f6279559f104d70f1632dtakashi サーバを実行するために特定の新しいユーザとグループを
208651a016b098f4fa1f6279559f104d70f1632dtakashi 設定することをお薦めいたします。
208651a016b098f4fa1f6279559f104d70f1632dtakashi これが常に望ましいわけではありません。
208651a016b098f4fa1f6279559f104d70f1632dtakashi 他の役割を担っているかも知れないからです。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>正確にどんなことをやっているのか、その危険性を知らないで、
208651a016b098f4fa1f6279559f104d70f1632dtakashi module="mpm_common">Group</directive>) を <code>root</code> に
208651a016b098f4fa1f6279559f104d70f1632dtakashi 設定しないでください。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi で複数のバーチャルホストを動かすことを目的としていますが、
208651a016b098f4fa1f6279559f104d70f1632dtakashi と、<directive module="perchild">AssignUserID</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi フォールバックとを定義することになります。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <p>特記事項: このディレクティブを
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="core" type="section">VirtualHost</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi で使用することはサポートされなくなりました。
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki <directive module="mod_suexec">SuexecUserGroup</directive>
208651a016b098f4fa1f6279559f104d70f1632dtakashi を使用してください。</p>
208651a016b098f4fa1f6279559f104d70f1632dtakashi <module>beos</module> と <module>mpmt_os2</module> MPM
208651a016b098f4fa1f6279559f104d70f1632dtakashi にも存在しますが、実質的に無効で、互換性のためだけに存在します。</p>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</directivesynopsis>
260825e232915f39b00a6f72c7c0af321a1694e6kawai<directivesynopsis>
260825e232915f39b00a6f72c7c0af321a1694e6kawai<description>apache が起動後に chroot(8) するディレクトリ
260825e232915f39b00a6f72c7c0af321a1694e6kawai</description>
260825e232915f39b00a6f72c7c0af321a1694e6kawai<syntax>ChrootDir <var>/path/to/directory</var></syntax>
260825e232915f39b00a6f72c7c0af321a1694e6kawai<contextlist><context>server config</context></contextlist>
260825e232915f39b00a6f72c7c0af321a1694e6kawai<module>prefork</module><module>worker</module></modulelist>
260825e232915f39b00a6f72c7c0af321a1694e6kawai <p>このディレクティブは2.2.9(?)以降で利用できます。
260825e232915f39b00a6f72c7c0af321a1694e6kawai サーバ起動後、ネットからリクエストを受け付けるより前に、
260825e232915f39b00a6f72c7c0af321a1694e6kawai <p>chroot 環境下でサーバを動かすのは単純ではなく、
260825e232915f39b00a6f72c7c0af321a1694e6kawai 特に CGI や PHP を動かしているなら、さらなるセットアップ
260825e232915f39b00a6f72c7c0af321a1694e6kawai が必要であることに注意してください。 この機能を使おうとする前に、
260825e232915f39b00a6f72c7c0af321a1694e6kawai chroot の動作を正しく理解しておくようにしてください。</p>
260825e232915f39b00a6f72c7c0af321a1694e6kawai</directivesynopsis>
9b1f839776a3549d50a9974fe519f19c043d7de2yoshiki</modulesynopsis>