名前
RewriteCond
形式
RewriteCond テスト文字列 条件パターン [フラグ]
機能概要
URLを書き換える条件を設定します。本ディレクティブは、RewriteRuleディレクティブの前に、1つ以上設定できます。テスト文字列の値が条件パターンに指定した条件を満たしている場合は、後続のRewriteRuleディレクティブの設定を適用します。
テスト文字列を以下の変数で指定します。
$N
Nには、1から9までの数値を指定します。
直前のRewriteRuleディレクティブのURLパターンに指定した正規表現のグループ化「括弧()」に対応した文字列で置き換えられます。
%N
Nには、1から9までの数値を指定します。
最後に条件を満たした本ディレクティブの条件パターンに指定した正規表現のグループ化「括弧()」に対応した文字列で置き換えられます。
%{サーバ変数名}
サーバ変数を指定します。サーバ変数については、「付録B 環境変数とサーバ変数」を参照してください。
%{ENV:環境変数名}
環境変数を指定します。環境変数については、「付録B 環境変数とサーバ変数」を参照してください。
%{HTTP:ヘッダ名}
任意のHTTPリクエストヘッダを指定します。
テスト文字列の値を判定するための条件を正規表現で指定します。
条件パターンの文字列の前にエクスクラメーションマーク(!)を付加し、正規表現にマッチしないパターンを条件として指定することもできます。
条件判定を制御するフラグを、角括弧([])で囲んで指定します。複数のフラグを指定する場合は、角括弧([])内にカンマ(,)で区切って指定してください。
指定可能なフラグを以下に示します。
nocase(または、NC)
大文字小文字を区別せずに判定します。
ornext(または、OR)
複数の本ディレクティブをOR条件にする場合に指定します。本フラグを指定しない場合は、AND条件になります。
novary(または、NV)
テスト文字列にHTTPリクエストヘッダを指定した場合、応答時、Varyヘッダの値にこのHTTPリクエストヘッダが設定されません。
指定位置
グローバルコンテキスト、バーチャルホスト、ディレクトリ
省略値
なし
モジュール
mod_rewrite
注意事項
本ディレクティブは、リライト機能を使用する設定(RewriteEngineディレクティブの設定値が「On」)の場合に有効となります。
バーチャルホストで本ディレクティブを使用する場合は、バーチャルホストごとに設定してください。