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

.htaccessでリダイレクトループが発生!その対処方法は?

サイト運営

サイトのドメイン変更を行う時に、変更前⇒変更後に301リダイレクトするのは常識的に行われています。

通常、ドメイン変更の301リダイレクトはとても簡単な1行の記述で対応できます。

しかし、間違えようがないような簡単な記述でも、リダイレクトループが発生するケースがあります。

この記事では、ドメイン変更のリダイレクトでリダイレクトループが発生する場合の対処方法とその原因についてまとめています。

単純なドメイン変更のリダイレクトの記述

単純なドメイン変更を行ったときの.htaccessのリダイレクトの記述はとても簡単です。

実質1行だけで済みますので、間違えるところはなさそうです。

RewriteEngine On
Redirect permanent / https://www.new.com/

この書き方は移転元の公開ディレクトリがルートの場合にはリダイレクトループが発生してしまいます。

なぜ、リダイレクトループが発生するのか?

なぜ、リダイレクトループが発生するのか順を追って説明します。

まず、旧ドメインのサイトが公開ディレクトリのルートに設置されている場合、.htaccessもルートディレクトリに存在することになります。

その.htacessにリダイレクトの記述をして、旧ドメイン⇒新ドメインへリダイレクトさせます。

旧ドメインにアクセスがあると新ドメインにリダイレクトされます。

しかし、新ドメインにアクセスする時に、再度、ルートディレクトリの.htacessが読み込まれます。

理由は簡単で、新ドメインはサブディレクトリに設置されますが、サブディレクトリから見ると、ルートディレクトリはサブディレクトリの親ディレクトリになります。サブディレクトリにある新サイトにアクセスする時には、親ディレクトリの.htaccessが先に読み込まれるためです。

その時点で、再度、新ドメイン⇒新ドメインへのリダイレクトが発生します。リダイレクトが終わらなくなるので、リダイレクトループが発生します。

リダイレクトループが発生しないリダイレクト方法

リダイレクトループが発生するのは、ルートディレクトリにアクセスした時にドメイン名を見ていないので、旧ドメインと新ドメインの区別がつかなくなるためです。

リダイレクトする条件にドメイン名を含めれば、リダリレクトループは発生しなくなります。

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

まとめ

ドメイン変更のリダイレクトは、書き方が簡単なため、リダイレクトループとは無縁だと思っていましたが、旧ドメインの公開ディレクトリがルートディレクトリになっているケースではリダイレクトループが発生するというお話でした。

それを避けるためには、RewriteCondでリダイレクト時にドメイン名を見てやればよい、というのが対策でした。

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

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

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

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

mixhost

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

Conoha Wing

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

エックスサーバー

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

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