Hitachi

 Hitachi Application Server V10 定義リファレンスWindows®用)


2.3.115 RedirectMatch

正規表現で記述した条件を満たすクライアントからのリクエストをリダイレクトする場合に指定します。

説明

正規表現で記述した条件を満たすパスに対するクライアントからのリクエストを、新パスに再リクエスト(リダイレクト)する場合に指定します。

正規表現で括弧()を使用してグループ化している場合、そのi番目のグループの表現にマッチした文字列を、新パス$iを使用して参照できます。iには1から9までの数字を指定します。正規表現で記述した条件を満たすパスへのリクエストを受信した場合に、指定したステータスコードと、新パスを設定したLocationヘッダーを応答します。通常、300番台のステータスコードを受けたWebブラウザーは、自動的にLocationヘッダーに指定されたアドレスに対して再リクエスト(リダイレクト)します。

書式

RedirectMatch [{permanent|temp|seeother|gone|ステータスコード}] 正規表現 新パス

記述できる場所

httpsd.conf<VirtualHost><Directory>.htaccess

指定できる値

permanent

ステータスコード301 Moved Permanentlyを応答する場合に指定します。

temp

ステータスコード302 Foundを応答する場合に指定します。

seeother

ステータスコード303 See Otherを応答する場合に指定します。

gone

ステータスコード410 Goneを応答する場合に指定します。新パスは指定できません。

ステータスコード

指定したステータスコードを応答する場合に指定します。

ただし、300番台以外を指定する場合、新パスは指定できません。

正規表現

スラッシュから始まるリクエストURLの旧パスを正規表現で指定します。ただし、旧パスには、?以降(問い合わせ文字列)を指定できません。

次のディレクティブ指定値と重複する旧パスは指定できません。

  • ProxyPassのパス名

例えば、次のような指定はできません。

RedirectMatch ^/aaa/bbb/(.*) http://aaa.example.com/$1
ProxyPass /aaa/ http://aaa.example.com/
新パス

"プロトコル名://ホスト名[:ポート番号]"を含むURLのパスを指定します。また、新パスに指定するURLには、IPv6アドレスまたはIPv6アドレスに対応したホスト名も指定できます。

上書き許可

FileInfoレベル

記述例

(例1)
RedirectMatch ^/other/ http://www.example.com/

/other/で始まるすべてのリクエストを、ステータスコード302で"http://www.example.com/"にリダイレクトします。

(例2)
RedirectMatch permanent ^/old/(.*) http://www.example.com/new/$1

"/old/ファイル名"に対するリクエストを、ステータスコード301で"http://www.example.com/new/ファイル名"にリダイレクトします。