リダイレクトとはページ転送のことで、ページに訪れたユーザーを別のページに自動で誘導させることです。
リダイレクトを使う用途はさまざまですが、今回はhtaccessで設定する、Webサイトリニューアル後の301リダイレクト記述方法についてご紹介します。
301リダイレクトの記述方法
<IfModule mod_rewrite.c> RewriteEngine on RewriteRule ^/ddd.html$ http://sample.com/index.html [R=301,L] RewriteRule ^aaa/bbb.html$ http://sample.com/ccc/index.html [R=301,L] </IfModule>
レンタルサーバーによっては<IfModule mod_rewrite.c>と</IfModule>を省略して記述できます。
RewriteEngine on RewriteRule ^/ddd.html$ http://sample.com/index.html [R=301,L] RewriteRule ^aaa/bbb.html$ http://sample.com/ccc/index.html [R=301,L]
Apacheの「mod_Rewrite」が使えない場合
「mod_rewrite」とはApacheのモジュールで、レンタルサーバーによっては対応していない。その場合は上記の記述方法ではページ転送されない。そういった時は次のように記述するとうまくリダイレクトされる。
Redirect 301 /ddd/bbb.html http://sample.com/ddd/bbb.html Redirect 301 /aaa/ http://sample.com/aaa/
ちなみに「mod_rewrite」が使えるレンタルサーバーでもこの記述でリダイレクトはされる。(だったらこれでいいじゃんという話し…)
リダイレクトの種類
Webサイトリニューアル時にページ評価を渡すリダイレクトには、301・302・303・307の4種類がありますが、たいていの場合は301か302しか使いません。さらに言えば302を使うなら301という風潮もあります。
301リダイレクト | 新しいURLへ永久的に転送する時に使用 |
---|---|
302リダイレクト | 一時的に別のURLへ転送させる時に使用 |
303リダイレクト | フォームなどでトップページに転送する時に使用(よくわからない) |
307リダイレクト | フォームなどで一時的にページ転送する時に使用(よくわからない) |
どうしてリダイレクトが必要なのか?
リダイレクトにはさまざま用途と方法があります。特にWebサイトリニューアル後は、古いサイトから新しいサイトへリダイレクトさせたほうがいいでしょう。リダイレクトする理由は次の通り。
ページ評価を引き続く
リニューアル前と後で同じようなページコンテンツを扱っている場合は、SEO評価を引き継ぐためにリダイレクトをしたほうがいい。
閲覧ユーザーのため
閲覧ユーザーの中にはブックマーク(お気に入り)に登録しているユーザーもいるでしょう。
また、検索結果に新しいURLが反映されるまでの間、飛び先のページが404NotFoundになることを防ぐためです。他のサイトから被リンクをもらっている場合もリダイレクトしておかないと無駄になります。
記事のコメント