ブログ管理

301リダイレクトがうまくいかなかった話。原因はURLのスラッシュ。

ブログ分割に伴い、元ブログにあった記事へのアクセスは「Redirection」を使って転送するようにしていたのですが
どうもうまく機能していないようでした。調査と対応のメモです。

301じゃなく404エラーになっている?

特定のURLを別のURLに転送する301リダイレクトが、「ページが見つかりません」を示す404エラーを返しているようでした。

正確には、404エラーの場合はブログのトップページに飛ぶよう設定していたので、404エラー=トップページの表示 です。やけにトップページへのアクセスが多い状態となっていました。

その割に、比較的アクセス数の多いはずのページ閲覧数が伸びない。
なんでだろう?と思いGoogleで検索してみると…検索結果URL末尾にスラッシュがついていました。

mejilong.com/diary/stream11 を新URLに飛ばすよう設定していたのに
mejilong.com/diary/stream11/ という末尾一文字が追加されているせいでリダイレクトが効かず、
さらに元のブログ内での404エラーとして処理されていたようです。

これは、、アクセスしてくれた人に不便。というかむかつきますね。

Redirectionに転送ルールを一つ追加

てなわけでRedirectionプラグインの設定を以下のように修正しました。

ソースURL: /(.*)/(.*)/$
ターゲットURL: /$1/$2
グループ:転送ルール

これで、まずURL末尾のスラッシュが除外され、整形済みのURLが301リダイレクトされて新ブログに転送されます。

多重リダイレクトって問題なく使えるんだろうか?と心配でしたが、大丈夫なようです。
アクセスも元に戻りました。

ちなみに、同じターゲットでもBINGによる検索ではURL末尾にスラッシュが付きませんでした。
Googleもついたりつかなかったりなので、解決はしたものの原因はよくわかりません。

COMMENT

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください