From: Yoshiki Hayashi APR が IPv6 をサポートする場合は、Apache はデフォルトで IPv6
- を listen するソケットを作ります (例えば Listen ディレクティブで
- IP アドレスが無指定の場合)。
- つまり、APR が IPv6 をサポートしている場合、 多くのプラットホームで IPv6 がサポートされてきていて、
+ APR はこれらのほとんどで IPv6 をサポートしているので、
+ Apache は IPv6 ソケットを割り当てて IPv6
+ 経由で送られてきたリクエストを扱うことができます。 IPv6 ソケットが IPv4 と IPv6 コネクションの両方を扱うことができるか
+ どうかは、Apache 管理者にとって厄介な問題です。
+ IPv4 コネクションを IPv6 ソケットで扱う場合は、
+ IPv4 マップされた IPv6 アドレスを使用していて、
+ ほとんどのプラットホームではデフォルトで使用可能ですが、
+ FreeBSD, NetBSD, OpenBSD では、システム全体としてのポリシーとの整合性から、
+ デフォルトでは使用不可に設定されています。
+ これらのデフォルトで使用不可のプラットホームであっても、
+ 特別な設定パラメータで Apache の挙動を変化させることができます。 IPv4 と IPv6 のコネクションを最小限のソケットで扱いたいのであれば、
+ IPv4 マップの IPv6 アドレスを使用する必要があり、
+ は、次と同じ意味になります。 APR が IPv6 をサポートしていない場合は、 プラットフォームや APR が何をサポートするかに関わらず、
+ IPv4 コネクションのみを扱うようにしたい場合は、
+ 次の例のように全ての
+ は、次と同じ意味になります。 IPv4 と IPv6 のコネクションを個別のソケットで扱うようにしたい場合
+ (つまり IPv4 マップのアドレスを無効にしたい場合)
+ は、 NetBSD 等のいくつかのプラットホームでは、IPv6
- のワイルドカードアドレス (「::」) のバインドでは IPv4
- インターフェースにコネクションを張れません。
- このような状況では、次のように複数の Listen ディレクティブが必要になります。
- Apache は現在これを自動検出することができないので、
- そのような場合は
- Listen 命令文は管理者が手動で編集しないといけません。 より高度なテクニック (Cookie や特殊な URL パス等)
+ においてもユーザの言語選択をサポートするため、
+ Apache 2.1 からは、 応答ヘッダがクライアントに送られる前に これが設定されていると、常に HTTP/1.0 での応答になります。この機能は、
- 元々は AOL のプロキシの問題のために実装されました。クライアントの中には、
+ これが設定されていると、HTTP/1.0 リクエストを発行するクライアントに対しては
+ 常に HTTP/1.0 で応答するようになります。この機能は、
+ 元々は AOL のプロキシの問題のために実装されました。HTTP/1.0 クライアントの中には、
HTTP/1.1 の応答を返されると正しく動作しないものがあるかもしれません。
この機能を使用することで、そのようなクライアントとの間の互換性問題を解決できます。 これが 1 に設定されると、この変数は --enable-v4-mapped configure オプションを指定して、単純に
+ --enable-v4-mapped では、Apache
+ の生成するデフォルトの設定ファイル中の
+ --enable-v4-mapped は、
+ FreeBSD, NetBSD, OpenBSD 以外の全てのプラットホームでのデフォルトです。
+ ですから、おそらくお手元の Apache はこの設定でビルドされているでしょう。
+ Listen 192.170.2.1:80
--disable-v4-mapped configure
+ オプションを指定して、次のように個別指定の
+
+ Listen 0.0.0.0:80
- Listen [::]:0
- --disable-v4-mapped では、Apache
+ の生成するデフォルトの設定ファイル中の
+ --disable-v4-mapped は、
+ FreeBSD, NetBSD, OpenBSD プラットホームでのデフォルトです。MultiViews はディレクトリ毎のオプションで、
+ httpd.confファイルの
.htaccess
ファイルで prefer-language
+ を認識するようになりました。
+ この変数が存在して、適切な言語タグが代入されているのであれば、
+ Vary
フィールドを取り除きます。
- クライアントの中にはこのフィールドを正しく解釈しないものがあります
- (クライアントの既知の問題
- のページを参照してください)。この変数を設定することでその問題を回避
- することができます。この変数を設定すると、force-response-1.0
+ クライアントの中にはこのフィールドを正しく解釈しないものがあります。
+ この変数を設定することでその問題を回避することができます。
+ この変数を設定すると、force-response-1.0
が設定されたことになります。text/html
以外のコンテントタイプに対する、DEFLATE 出力フィルタを無効にします。DEFLATE 出力フィルタを無効にします。
+ また、静的に、既に圧縮されたファイルを使用したい場合、
+ (gzip だけでなく、"identity" と異なる全てのエンコードに対して)
+
セットされると、DEFLATE フィルタがオフになります。
+ そして
これが設定されている場合は、
en, ja, x-klingonといった)
+ 言語タグが格納されていれば、その言語の variant を送信しようとします。
+ そのような variant がない場合は、
+ 通常のネゴシエーション処理が
+ 適用されます。
Apache は Apache Software - Foundation ダウンロードサイトや近くの - ミラーサイトからダウンロードできます。
- -alpha で終わるバージョン番号は、
- 動くか動かないかよく分からない、
- 早期のプリテストバージョンであることを示しています。
- beta で終わるバージョンはそれよりは信頼性のある
- リリースですが、テストとバグフィックスを重ねる段階のものです。
- Apache HTTP サーバの入手可能な中で最高の製品リリースを
- ダウンロードしたいのであれば、ファイル名に alpha
- も beta
- も付かない最新のバージョンを選んでください。
ダウンロード後、特にミラーサイトを使った場合は、
ダウンロードしたものが Apache HTTP
@@ -162,8 +152,8 @@
検証することが重要です。これはダウンロードした tarball の PGP 署名を
テストすることによって検証します。
これは二つの段階があります。
- まず KEYS ファイルを Apache 配布サイト
+ まず KEYS
+ ファイルを Apache 配布サイト
からダウンロードしてください。(KEYS ファイル自体が
改竄されていないことを確実にするために、以前の Apache
配布から取り出したファイルを使ったり、
@@ -179,8 +169,11 @@
次のステップでは、tarball を PGP 署名でテストします。
PGP 署名は必ず メインの Apache
+ href="http://httpd.apache.org/download.cgi">メインの Apache
ウェブサイトから取得してください。
+ 署名ファイルへのリンクは対応するダウンロードリンクの隣にあり、また
+ Apache
+ 配布サイトの特定のディレクトリで見つけることもできるでしょう。
署名ファイルの名前は、ソースファイルの tarball と同じ名前に
.asc を付加したものになっています。
以下のコマンド (やっぱり pgp のバージョンに依存) のどれか一つで、
@@ -502,6 +495,13 @@
mpm_name という MPM を有効にするには次のようにします。
+ +Windows 上では、Apache は通常は - Windows NT ではサービスとして、Windows 95 + Windows NT, 2000, XP ではサービスとして、Windows 9x, ME ではコンソールアプリケーションとして実行されます。 - 詳細に関しては、「 - Windows で Apache を実行する」をご覧下さい。
+ 詳細に関しては、「 + サービスとして実行する」と「 + コンソールアプリケーションとして実行する」をご覧下さい。Unixでは、httpd
プログラムが、バックグラウンドで常にリクエスト処理を行う
diff --git a/docs/manual/logs.xml.ja b/docs/manual/logs.xml.ja
index 3d9c3cb3bbb..b3c4fa443cf 100644
--- a/docs/manual/logs.xml.ja
+++ b/docs/manual/logs.xml.ja
@@ -1,7 +1,7 @@
-
+
この文書では Unix に類似したシステムでの - Apache の停止と再起動について扱っています。Windows - ユーザ (Windows で Apache を使う場合) は、実行中の Apache - にシグナルを送るもご覧下さい。
+ Apache の停止と再起動について扱っています。 + Windows NT, 2000, XP ユーザはサービスとして + Apache を実行するを、Windows 9x, MEユーザはコンソールアプリケーションとして + Apache を実行するで、 + これらのプラットホームでの使用方法をご覧下さい。たくさんの実行形式 httpd がシステム上で
+
+
Apache を停止したり再起動したりするためには、実行されている
+ httpd プロセスにシグナルを送る必要があります。
+ シグナルを送るには二つの方法があります。
+ 一つ目はプロセスに直接シグナルを送る unix の kill
+ コマンドを使用する方法です。
+ システムを見ればたくさんの httpd が
実行されているのに気が付くでしょうが、シグナルを送るのは
親プロセスだけで、それ以外の個々のプロセスには
シグナルを送らないで下さい。その親プロセスの pid は
@@ -24,37 +36,45 @@
に書かれています。これはつまり、親以外のプロセスに
シグナルを送る必要すらない、ということです。
親プロセスに送ることができる 3 種類のシグナルがあります:
- TERM, HUP, USR1
+ TERM,
+ HUP,
+ USR1
です。これらの説明については続きをご覧下さい。
親プロセスにシグナルを送るには、 次のようなコマンドを発行して下さい:
-httpd プロセスにシグナルを送る 2 番目の方法は
+ -k というコマンドライン引数を使用することです。
+ 下で説明されているように、stop, restart,
+ graceful を指定できます。
+ これらは httpd の引数ですが、
+ 制御用のスクリプト apachectl を
+ 使うことをお薦めします。apachectl はそれらの引数をそのまま
+ httpd に渡します。
これの実行状況は次のコマンドで読むことができます:
+httpd にシグナルを送った後、
+ 実行状況を次のコマンドで読むことができます:
ここに挙げた例は、各自の
apachectl - と呼ばれるシェルスクリプトで、Apache にシグナルを送る手順を - 自動化することができます。このスクリプトの詳細に関しては、 - Apache の起動の文書をご覧下さい。
apachectl stopapachectl -k stopTERM シグナルを親プロセスに送ると、
- 即座に子プロセス全てを kill しようとします。
+
親プロセスは 親プロセスは TERM あるいは stop
+ シグナルを親プロセスに送ると、即座に子プロセス全てを kill しようとします。
子プロセスを完全に kill し終わるまでに数秒かかるかもしれません。
その後、親プロセス自身が終了します。
処理中のリクエストは全て停止され、もはやリクエストに対する
@@ -64,19 +84,20 @@
- apachectl gracefulapachectl -k gracefulUSR1 シグナルを受け取ると、
- 子プロセスに現在のリクエストの処理の後に終了する
+ USR1 あるいは graceful
+ シグナルを受け取ると、子プロセスに現在のリクエストの処理の後に終了する
(あるいは何もしていなければすぐに終了する)
ように助言します。
親プロセスは設定ファイルを再読込して、ログファイルを開き直します。
子プロセスが徐々になくなるに従って、
新しい世代の設定による子プロセスに置き換えていきます。
そして、これらが新たなリクエストに即座に応答し始めます。USR1
+ を緩やかな再起動のために使うことができませんが、代わりのシグナル
(例えば WINCH) が使用できるでしょう。
apachectl graceful
というコマンドはプラットホームに合ったシグナルを送ります。httpd を起動しようとすればわかります。
もしエラーがなければ、ソケットやログを開こうとして
root でないため
- (もしくは httpd が既に必要なポートにバインドしているため)
+ (もしくは実行中の httpd
+ が既に必要なポートにバインドしているため)
に失敗するでしょう。
これ以外の理由で起動に失敗したのであれば、
それは設定ファイルのエラーで、
@@ -144,10 +166,10 @@
- apachectl restartapachectl -k restartHUP シグナルを親プロセスに送ると、
+ HUP あるいは restart シグナルを親プロセスに送ると、
TERM と同様に子プロセスを kill しますが、
親プロセスは終了しません。
設定ファイルを再読込して、ログファイル全てを開き直します。
diff --git a/docs/manual/suexec.xml.ja b/docs/manual/suexec.xml.ja
index bd0ab3b2e5b..856395d61ba 100644
--- a/docs/manual/suexec.xml.ja
+++ b/docs/manual/suexec.xml.ja
@@ -1,7 +1,7 @@
-
+
src/CHANGES ファイルで見つけられると思います。PATH_INFO のあるリクエストを受け付けません。INCLUDES などのフィルタは
+ href="mod/mod_include.html">INCLUDES や
+ PHP などのフィルタは
コアハンドラの上に実装されていますので、PATH_INFO
付きのリクエストを拒否します。
PATH_INFO
- 付きのリクエストを受け付けるようにでき、それによって SSI で
+ 付きのリクエストを受け付けるようにでき、それによって SSI 等で
PATH_INFO を使う機能を復活させることができます。
FancyIndexing オプションで
実現できます。
-
httpd のコマンドラインオプション -S は
- -t -D DUMP_VHOSTS に置き換えられました。
あるいは、一時的にサイトのすべてのページを一つのページへリダイレクトする - ときは、以下を使います:
+あるいは、一時的にサイトのすべてのページを他のサイトの特定の + ページへリダイレクトするときは、以下を使います: