お問い合わせはコチラから

【ドメイン変更】301リダイレクトで確実にリダイレクトするには?

サイト運営

ドメイン変更時に301リダイレクトするのは、必須です。

リダイレクトは、.htaccessに簡単な記述を追加すれば簡単に301リダイレクトできます。また、その記述方法もネットを検索すれば簡単に見つかるので自分で行うのも難しくありません。

ドメインの301リダイレクトは簡単なのです。

ところが、先日ドメイン変更時にいつものようにリダイレクトしたら思わぬ問題が発生しました。その時に、結構焦ったのでドメイン変更時の301リダイレクト方法をまとめておきたいと思います。

301リダイレクトの様々な方法

Redirects and Google Search | Google Search Central  |  Documentation  |  Google for Developers
Learn about the different types of redirects, how Google can interpret them, and how they can be useful in Google Search...

サブドメインがあるとリダイレクトはトラブりやすい

リダイレクトは公開ディレクトリのTOPに.htaccessを配置するのが一般的です。

サブドメインのリダイレクトの場合も、サブドメインの公開ディレクトリのTOPに.htaccessを配置します。

サブドメインの公開ディレクトリは、自分で決められるケースもありますが、サーバーの仕様で決まってしまっているケースもあります。

ドメインとサブドメインの公開ディレクトリの位置関係でトラブルの原因になりやすいです。

ドメインの公開ディレクトリにサブドメインの公開ディレクトリが含まれない場合

ドメインの公開ディレクトリとサブドメインの公開ディレクトリが横並びもしくは別階層の場合は、各.htaccessの主従関係がないので、リダイレクトの影響はお互いにありません。

+ domain-dir/.htaccess
+ sub1.domain-dir/.htaccess
+ sub2.domain-dir/.htaccess

ドメインの公開ディレクトリにサブドメインの公開ディレクトリが含まれる場合

ドメインの公開ディレクトリとサブドメインの公開ディレクトリが親子関係にある場合、各.htaccessは主従関係がありますので、上位の.htaccessが下位の.htaccessに影響を与えます。

このケースがトラブルになりやすいです。

+ domain-dir/.htaccess
 L sub1.domain-dir/.htaccess
 L sub2.domain-dir/.htaccess

サブドメインを含めてドメインを完全に別ドメインに変更する場合のリダイレクト

ドメインの公開ディレクトリにサブドメインの公開ディレクトリが含まれない場合

サブドメインの公開ディレクトリがドメインの公開ディレクトリに含まれない場合は、簡単です。よくある以下の記述を公開ディレクトリのTOPに配置すれば大丈夫です。

# Permanent redirect:
Redirect permanent "/" "https://new-domain.com/"

ドメインの公開ディレクトリにサブドメインの公開ディレクトリが含まれる場合

サブドメインの公開ディレクトリがドメインの公開ディレクトリに含まれる場合は、単純ではありません。ドメインの.htaccessがサブドメインの.htaccessに影響を与えてしまうからです。

old-domain.jp⇒new-domain.comへのドメイン変更の場合

URLから判定してリダイレクトする条件を限定します。

RewriteEngine On
RewriteCond %{http_host} ^www.old-domain.jp [OR]
RewriteCond %{http_host} ^old-domain.jp 
RewriteRule ^(.*) https://new-domain.com/$1 [R=301,L]

sub.old-domain.jp⇒sub.new-domain.comへのドメイン変更の場合

下位階層に別の公開ディレクトリが無いので簡単に済ませます。

# Permanent redirect:
Redirect permanent "/" "https://sub.new-domain.com/"

ドメインとサブドメインの一部を別のドメインに変更する場合

特殊な例ですが、実際にあった話なので残しておきます。

例えば、以下のようなドメインのサイトがあったとします。

  • old-domain.com
  • sub1.old-domain.com
  • sub2.old-domain.com
  • sub3.old-domain.com

上記のようなサイトのドメインの一部新しいドメインに変更したいとします。

  • old-domain.com ⇒ new-domain.com
  • sub1.old-domain.com ⇒ sub1.new-domain.com
  • sub2.old-domain.com
  • sub3.old-domain.com

この時に、一部のサイトはold-domainのまま残します。

このような場合は、以下のようにURLを判定して.htaccessを書かないとトラブルのもとになります。

RewriteEngine On
RewriteCond %{http_host} ^www.old-domain.jp [OR]
RewriteCond %{http_host} ^old-domain.jp 
RewriteRule ^(.*) https://new-domain.com/$1 [R=301,L]

まとめ

公開ディレクトリが親子関係にある場合は.htaccessも親子関係にありますので、301リダイレクトは特殊な対応が必要になります。

URLから判定する方法であれば、広く対応できるのでこの書き方を覚えておくと困らないと思います。

この記事を書いた人
ブーン

はるばる日本よりオランダ王国へやってまいりました。
自分の経験が少しでも参考になれば嬉しいです。
お問い合わせは、『こちら』からお願い致します。

\ブーンをフォロー/
スポンサーリンク
サイト運営
\シェアお願いします!/
\ブーンをフォロー/
こんな記事も読まれています

失敗しないレンタルサーバーランキング

mixhost

不正アクセスに強くて使いやすいおススメサーバー
\本サイトで利用中/
メリット①:自動ウィルス駆除対応
メリット②:サイトの表示速度が速い!
メリット③:転送量の上限が多い!
メリット④:自由にプラン変更ができ、アクセス増にも対応できる!
メリット⑤:バックアップデータが無料で復元できる!
メリット⑥:Wordpressが簡単にインストールできる!
メリット⑦:どのプランでも初期費用が無料!
メリット⑧:10日間の無料お試し期間と30日の返金保証!

Conoha Wing

国内Wordpress最速の最強サーバー
メリット①:圧倒的な表示速度
メリット②:レンタルサーバーと独自ドメインがセットでお得◎
メリット③:プラン変更はすべてのプランで自由自在
メリット④:一か月の利用転送量の制限が緩い(9TB~)
メリット⑤:WordPresサイトの移行が簡単

エックスサーバー

国内シェアNo1の安定性と実績が魅力。ALL SSDで死角なしの万能サーバー。
メリット①:サイトの表示速度が安定して速い!
メリット②:アクセス負荷に強くて安定性が高い!
メリット③:24時間365日の充実サポートで安心!電話サポートもあり!
メリット④:転送量が多い!
メリット⑤:自動バックアップ機能付き!
メリット⑥:WordPressが簡単にインストールできる!
メリット⑦:10日の無料お試し期間がある!

タイトルとURLをコピーしました