こちらのブログは今まで20年間あまり投稿を続けてきた関係で、MovableTypeからWordPressにブログのシステムを変更したり、パーマリンクの形式を変更したり、SSL化したり、ドメインを変更したりといった修正を幾度となく繰り返してきました。結果、他サイトからリンクをしていただいたURLが現時点ではURLが変更になってしまっていて、404のNOT FOUNDになってしまうケースが散見されています。今まで、URLが変更になってしまう際には、リダイレクトで極力救済できるように努力はしてきたつもりなのですが、まだまだ不十分です。
何か、この404になってしまうケースを救うことができないか検討した結果、WordPressのプラグイン、Redirectionを使う方法を思いつきました。このプラグインでは、404になってしまったアクセスのログを取得し閲覧できる機能があります。この404になってしまったURLを一つずつ正しいURLにリダイレクトする設定していけば救うことができます。
例えば、Redirecionプラグインの設定メニューの中にある「404エラー」で下記のログが残っていたとします。
この場合は、1141番目のエントリーにアクセスし、NOT FOUNDになった可能性が最も高いので、ブラウザのURL欄で、下記のように入力します。
https://www.xxxxxxxx.xxx/?p=1141 (xxxxxxxxは自サイトのドメイン)
すると、該当のエントリーがあれば表示されます。そのエントリーの編集画面に入って、本当のURL(パーマリンク)を取得します。
続いて、Redirectionの設定画面(404エラー)に戻り、該当の行にポインターを移すと「転送ルールを追加」というリンクが表示されるので、正しいURLを設定します。
これで正しいURLへ転送されるようになります。元のページを復活させることはこのサイトの場合は無いので、リダイレクトするときのコードは全て301で転送するようにしています。
中には本当に自分のサイトから削除してしまったページに対するアクセスもあります。この場合は何もせずに、404エラーを返却するようにしておきます。目的外の別のページにリダイレクトするようにしてしまうと、リンク元のサイトで404になっていることを気づけなくなってしまいます。
ときどき、404エラーのログを確認して、この作業を繰り返していきました。手間がかかる割に、この作業をしたからと言って、すぐに大きな効果が出ることは無いと思いますが、出来るだけユーザーフレンドリーな状況を維持することが結果として大切かと思います。
コメント