以前の記事で書いた通り、パーマリンクを変更しようとしてPermalink Redirectを導入しました。
これを導入した時点で、パーマリンクがAからBに変更されていた。
で、301リダイレクトで恒久的にURLのAがBに変更しますという宣言もしていたわけ。
ここまでは正常な動きでした。
結局パーマリンクの変更は、ソーシャルの評価が全部0になるからやめたわけですよ。
で、設定していたBのURLをAに戻したわけです。
設定上では正しく、しっかりとBからAに変更しますという宣言をしてた。
ここから異常な動き。
実際はなんと、AからBの宣言が残ったままになってたわけです。
AにアクセスするとBに301されたという宣言がされ
BにアクセスするとAに301されたという宣言がされ
ループ状態になってたわけですな。
アクセス数がめっちゃ激減して、もう何事かと思ってたけど、まさかそんなことになっていたとは・・・。
301リダイレクトの判定は、以下のサイトで確認できます。
View HTTP Request and Response Header
ここでstatusが301になっていたら、301でどこかにURL変更されたという宣言がされているということ。
AのURLで確認すると301、BのURLで確認しても301というカオスな状態になってました。
ちなみにGoogleのインデックスからは、301ループしている記事は全て削除されてました。
ウェブマスターツールでは「Increase in not followed pages」というメッセージが表示され続けてました。
ループ問題は、プラグインをオフにすることで解決。それをしたのが今さっき。
前述のサイトで調べても、ちゃんと「Status: HTTP/1.1 200 OK 」になっていたので、問題ないかと思います。
サイトマップも再送信したので、早ければ1週間ほどで、またインデックスがされてくれると期待!
SEOに直結する変更は、やっぱり怖いですね。
後、やっぱり他人がつくったプラグインは過信してはいけない。
まさか設定を上書きしても、以前の設定が残り続けるとは思わなかった。
これは本当に恐ろしいバグですわ。こんなことあるんですね。
このまま気付かずに続けてたら、このブログ自体がGoogleからなかったことにされていたかもしれない。
良い勉強になりました。
最後に別のパーマリンク変更プラグインを使って、BからAに301設定しておきました。
以下のプラグインですが、配布が終わってるらしいのでリンクはInternet Archiveにしてあります。
使用は自己責任で。
[Downliad in InternetArchive] WordPress › Dean’s Permalinks Migration « WordPress Plugins
※追記
Dean’s Permalinks Migrationを使っていても、変更をすると正常に処理しなくなりました。
(ただ、こちらはループはしなかった)
で、Mysqlのwp_optionsの_transient_rewrite_rulesを消すと、正常に処理するようになりました。
(ちなみにpermalink redirectで設定が残る問題は、これとは別のようです。)
wp_optionsの_transient~~はtempファイルみたいなもので、削除してもOKです。
見つからない場合は、必要なプラグインとかが勝手にまた作ってくれます。
一括削除したい時は、念のためSQLのバックアップとってから
DELETE FROM `wp_options` WHERE `option_name` LIKE (‘%_transient_%’)
で一括削除可能です。
コメントを残す