リダイレクト (HTTP)

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索

ウェブサイトにおけるリダイレクト:redirect)とは、ウェブサイトの閲覧において、指定したウェブページから自動的に他のウェブページに転送されること。URLリダイレクト(URL redirection)とも言われる。

通常はウェブページのURLが変わったときに、元のURLから新しいURLへ誘導するときに用いられる。フィッシング詐欺サイトへの誘導などで用いられている場合もある。

HTTPリダイレクト

HTTPヘッダにあるHTTPステータスコードにてリダイレクトの種類を伝え、Location:ヘッダで移動先を伝える。種類には301 Moved Permanently(恒久的な移転)や302 Found(発見)などがある。Webサーバの設定ファイル(Apacheの場合、httpd.confファイルや.htaccessファイル)や、CGInon-parsed headerスクリプト)などで指定できる。

metaタグによるリダイレクト

HTML文書の head要素内に meta要素の http-equiv属性の値に "refresh" を記述する。content属性で文書を読み込んでから何秒後に転送させるかを指定する。HTTPステータスコードはリダイレクトなしで直接アクセスした場合と同様のコードが返される。

  • metaタグ記述例

<META HTTP-EQUIV="Refresh" CONTENT="3; URL=http://www.example.co.jp/">と設定すると3秒後に"http://www.example.co.jp/"へ自動転送される。CONTENT="3"の3の部分が転送までの時間を意味する。 各種検索サイトのクローラーの解釈は,それぞれ異なるので注意が必要である。0秒の場合、Yahoo!の場合は301リダイレクト(永久的なリダイレクト)と扱われる [1]googleの場合はサーバサイドで301リダイレクトの使用を奨めている[2]。ヤフーについては0秒リダイレクトがSEO的に有利と言える。

クライアントスクリプトによるリダイレクト

JavaScript等のクライアントスクリプトをに記述することで、転送をする方法。セキュリティ上、スクリプトの実行を許可していないPCでは転送されないこともある。また、HTTP Response Headerはリダイレクトなしで直接アクセスした場合と同様のコードが返されるため、検索エンジンのロボットに移転したことが伝わらない場合もある。

テンプレート:Asbox