今回は備忘録として、ドメイン移管時にディレクトリ構造通りにすべてリダイレクトする方法についてまとめてみたいと思います。
ドメイン移管とそのリスク
既に運用しているサイトのドメインを変更したい、サイトを運用しているとこういった必要性が出てくる場合があります。
しかしながら、サイトのドメインを変更することにはリスクもあります。
そのリスクは、例えば以下のようなものです。
- ●検索順位の低下
- ●被リンクによるアクセスの喪失
ドメインが新しくなれば、検索エンジンの評価はゼロからはじまりますので、これまで維持してきた検索順位は大きく落ちることが想定されます。
また、旧ドメインで表示されていたリンク、また、他サイトに掲載されていたリンクはすべて死んでしまうことになります。
これは大きな損失です。
では、ドメイン移管に伴うこういったリスクを回避する方法はないのでしょうか?
実はこういったリスクは、.htaccessを利用した”リダイレクト”という方法である程度回避することが可能です。
.htaccessによるリダイレクト
.htaccess(ドット・エイチ・ティ・アクセス)とは、Apache(アパッチ)などのウェブサーバーにおいて、ディレクトリ単位でその動作を設定できるファイルです。
このファイル内に特定の記述をすることで、旧ドメインから新ドメインへのリダイレクトを実現することができます。
しかしながら、リダイレクトを行うにしても、例えば、検索結果に会社概要へのリンクが出てきて、それをクリックしたら新ドメインのトップページにつながってしまったということでは、ユーザーは戸惑ってしまいます。
そこで、旧ドメインのサイトの階層構造通りにリダイレクトをする必要性が出てくるのです。
そこで、今回は.htaccessに数行記載をするだけで、旧ドメインサイトから新ドメインサイトへ階層通りにリダイレクトさせる記述を紹介したいと思います。
ディレクトリ構造通りにすべてリダイレクト記述
<ifmodule mod_rewrite.c="">
RewriteEngine On
RewriteCond %{http_host} ^元ドメイン
RewriteRule ^(.*)$ https://新ドメイン/$1 [R=301,L]
</ifmodule>
まとめ
これだけで丸ごとリダイレクトができるのですから、とても簡単ですね。
サイト構造そのままでドメインだけ移管したい、でも、SEO効果や被リンクアクセスを失うのが怖い・・・そんな風に考えてドメイン移管に躊躇をされている方はぜひご活用頂ければと思います。