このモジュールは コンテントネゴシエーションを 提供します。
ステータス: Base
ソースファイル: mod_negotiation.c
モジュール識別子: negotiation_module
type-map ハンドラで扱われるファイル)。
これは variants を含んでいるファイルを明示的に指定します。
タイプマップは RFC 822 のメールヘッダと同じ書式です。ドキュメントの記述が 空行で分離されて書かれていて、ハッシュ文字 ('#') で始まる行は コメントとして扱われます。ドキュメントの説明は複数のヘッダレコードから 構成されます。レコードは、続きの行が空白で始まっていると複数の行にまたがります。 最初の空白が消去されて、前の行とつなげて 1 行として扱われます。ヘッダレコードは キーワード名の後に値が続くという形式で、キーワード名は常にコロンで終わります。 空白はヘッダ名と値の間、値のトークンの間に入れることができます。
使用可能なヘッダは以下のとおりです:
x-compress
と gzip されたファイルのための x-gzip を含みます。
エンコーディングの比較をするときは、接頭辞 x- は無視されます。
en は英語を表します。
name=value で、メディアタイプや他のパラメータとは
セミコロンで分離されます。共通のパラメータは以下のとおり:
text/html では 2 がデフォルトで、その他の場合は 0 がデフォルトです。
Content-Type: image/jpeg; qs=0.8
MultiViews 探索は、Multiviews オプションにより
有効になります。サーバが /some/dir/foo へのリクエストを受け取り、
/some/dir/foo が存在しない場合、サーバはディレクトリを
読んで、foo.* にあてはまる全てのファイルを探し、
事実上それらのファイルをマップするタイプマップを作ります。
そのとき、メディアタイプとコンテントエンコーディングは、そのファイル名を
直接指定したときと同じものが割り当てられます。それからクライアントの
要求に一番合うものを選び、そのドキュメントを返します。
このディレクティブが設定されていると、コンテントネゴシエーションをした 結果のドキュメントのキャッシュを許可します。これは、 プロキシの後ろにいるクライアントが能力に一番合ったドキュメントではなく、 キャッシュをより効果的にするものを得る可能性があるということです。
このディレクティブは HTTP/1.0 ブラウザからのリクエストのみに適用されます。 HTTP/1.1 は、交渉されたドキュメントのキャッシュに対してずっとよい制御が 可能なので、このディレクティブは HTTP/1.1 のリクエストには影響しません。
LanguagePriority は、MultiViews リクエストを扱うときに、クライアントが 優先順位を提供していない場合の言語の優先順位を設定します。 MIME-lang のリストが優先度の降順に並びます。例:
LanguagePriority en fr de
foo.html がリクエストされ、
foo.html.fr と foo.html.de が両方存在し、
ブラウザが言語の優先順位を提供してない場合は foo.html.fr が
返されます。
このディレクティブは他の方法で「最善」の言語が決定できないときのみ 効果があることに注意してください。HTTP/1.1 リクエストが正しく実装されて いる場合には、このディレクティブは無効になります。
DefaultLanguage, AddLanguage も参照してください。