ベストアンサー
1
iQi - 面白いアプリを開発中
{ 賛成 }: lujian
ステータスコード 301(恒久的移動)を送出してリダイレクトしたい場合、
または、
追記(ロケーションヘッダを送出する例のメモ):
3xx Redirection リダイレクション
HTTPステータスコードを送出する例
ロケーションヘッダ以外も色々試してみたところ、第一引数にHTTPを入れればHTTPステータスコードを送出することも出来る模様。取り敢えず良く使いそうなものを載せておく。
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://example.com/');
または、
header('Location: URL', true, 301);
追記(ロケーションヘッダを送出する例のメモ):
// 301 Moved Permanently
header('Location: http://example.com/', true, 301);
// 302 Found
header('Location: http://example.com/', true, 302);
header('Location: http://example.com/');
// 303 See Other
header('Location: http://example.com/', true, 303);
// 307 Temporary Redirect
header('Location: http://example.com/', true, 307);
3xx Redirection リダイレクション
300 Multiple Choices
複数の選択。リクエストしたリソースが複数存在し、ユーザやユーザーエージェントに選択肢を提示するときに返される。
301 Moved Permanently
恒久的に移動した。リクエストしたリソースが恒久的に移動されているときに返される。Location:ヘッダに移動先のURLが示されている。
例としては、ファイルではなくディレクトリに対応するURLの末尾に/を書かずにアクセスした場合に返される。
302 Found
発見した。リクエストしたリソースが一時的に移動されているときに返される。
303 See Other
他を参照せよ。リクエストに対するレスポンスが他のURLに存在するときに返される。
304 Not Modified
未更新。リクエストしたリソースは更新されていないことを示す。
305 Use Proxy
プロキシを使用せよ。
306 (Unused)
将来のために予約されている。
307 Temporary Redirect
一時的リダイレクト。
HTTPステータスコードを送出する例
ロケーションヘッダ以外も色々試してみたところ、第一引数にHTTPを入れればHTTPステータスコードを送出することも出来る模様。取り敢えず良く使いそうなものを載せておく。
// 400 Bad Request
header('HTTP', true, 400);
// 403 Forbidden
header('HTTP', true, 403);
// 404 Not Found
header('HTTP', true, 404);
// 500 Internal Server Error
header('HTTP', true, 500);