2.3.114 Redirect
クライアントからのリクエストをリダイレクトする場合に指定します。
説明
旧パスに対するクライアントからのリクエストを、新パスに再リクエスト(リダイレクト)する場合に指定します。
旧パスでリクエストを受けた場合、指定したステータスコードとLocationヘッダーに新パスを設定した応答を返します。通常、300番台のステータスコードを受けたWebブラウザーは、自動的にLocationヘッダーに指定されたアドレスに対してリダイレクトします。
Redirectディレクティブでは、特定のファイルへのリクエストを特定のファイルへリダイレクトするか、特定のディレクトリー下の、任意のパスへのリクエストを特定のディレクトリー下の、同名パスへリダイレクトする指定ができます。特定のディレクトリー下の、任意のパスへのリクエストを、特定のファイルへリダイレクトしたい場合はRedirectMatchディレクティブを使用してください。
書式
Redirect [{permanent|temp|seeother|gone|ステータスコード}] 旧パス 新パス
指定できる値
- permanent
-
ステータスコード301 Moved Permanentlyを応答する場合に指定します。
- temp
-
ステータスコード302 Foundを応答する場合に指定します。
- seeother
-
ステータスコード303 See Otherを応答する場合に指定します。
- gone
-
ステータスコード410 Goneを応答する場合に指定します。新パスは指定できません。
- ステータスコード
-
指定したステータスコードを応答する場合に指定します。
ただし、300番台以外を指定する場合、新パスは指定できません。
- 旧パス
-
スラッシュから始まるリクエストURLのパスを指定します。ただし、旧パスには、?以降(問い合わせ文字列)を指定できません。
次のディレクティブ指定値と重複する旧パスは指定できません。
-
ProxyPassのパス名
例えば、次のような指定はできません。
Redirect temp /aaa/bbb/ http://aaa.example.com/ ProxyPass /aaa/ http://aaa.example.com/
-
- 新パス
-
"プロトコル名://ホスト名[:ポート番号]"を含むURLのパスを指定します。また、新パスに指定するURLには、IPv6アドレスまたはIPv6アドレスに対応したホスト名も指定できます。
記述できる場所
httpsd.conf、<VirtualHost>、<Directory>、.htaccess
上書き許可
FileInfoレベル
記述例
Redirect temp /index.html http://ホスト名:port番号/default.html
/index.htmlに対するリクエストを、ステータスコード302で"http://ホスト名:port番号/default.html"にリダイレクトします。