このブログではありませんが、先日、別のブログをはてなブログからBlogger(blogspot)に移転させました。その時の、はてなブログの個別ページ(各記事)を、移転先のBloggerの各個別ページへリダイレクト(転送)させた方法を、備忘録としてメモしておきます。
1.送り手側(はてなブログ)のリダイレクト設定
まず旧ブログ(はてなブログ)からデータをエクスポートして、新ブログ(blogger)へインポートして中身(データ)の移行を完了させます。
それからリダイレクト設定をします。旧ブログ(はてなブログ)にアクセスした人を、自動で新ブログ(blogger)へ誘導させるのが目的です。
はてなブログのリダイレクト設定は、以下のサイトで紹介されている情報をそのまま活用させていただきました。
はてなブログから引越し後のはてなブログのリダイレクト設定方法
https://www.haneda-airport-server.com/entry/hatena-redirect
https://www.haneda-airport-server.com/entry/hatena-redirect
JavaScriptを使って新しいサイトに転送させる方法です。
上記サイトに書かれているコードを、はてなブログの「ヘッダ」にそのままコピペするだけ。
これで、新しいブログへ転送されるようになります。
リダイレクト中の画面は以下のような感じです。
2.個別記事のURL文字列が違う問題
上記1にて、旧ブログ(はてなブログ)にアクセスすると、新ブログ(Blogger)へ転送はされるようになったものの、 トップページ同士は問題ないのですが、個別ページがうまく転送できません。新ブログには転送され、新ブログのURL下で表示されるものの、空ページで「お探しのページは見つかりません。」などと表示されてしまいます。
旧ブログ(はてなブログ)がリダイレクトで発信した個別記事のURLに、はてなブログ特有の/entry/という新ブログ(Blogger)には無い文字列が入ってしまうからです。
具体的には、転送先がこんなURL↓
https://〇〇〇.blogspot.com/entry/redirect-shitai-page
になってしまうのですが、受け手側(Blogger)のほうには/entry/という文字列をURLの途中に付けることができません。
存在しないURLが入力されているので、文字通り「お探しのページは見つかりません。」となってしまいます。
3.転送の受け手側(引っ越し先)のブログの設定
リダイレクトのリダイレクト(転々送)
そこで、受け手側(Blogger)のほうでもリダイレクトされたてきたアクセスを、さらに内部調整(さらに新しい個別記事URLへリダイレクト)する必要があります。
内部URLリダイレクト機能
そこで使うのが、ブログ内の既存の内部URLリダイレクト機能です。
ライブドアブログなどにもありますが、Bloggerでも「カスタム リダイレクト」機能というものがあります。
Bloggerの管理画面で、左側の、
設定>検索設定>エラーとリダイレクト>カスタム リダイレクト>編集
と進み、
リダイレクト元:/entry/redirect-shitai-page
リダイレクト先:/2019/07/redirect-shitai-page.html
永続的: はい
↓
「保存」
↓
「変更を保存」
などと「リダイレクト先」を新しい個別記事の任意のURLに設定すれば、無事に、古いブログの個別ページも、それぞれ新ブログ(Blogger)の個別ページへ転送されるようになります。
※この時、「保存」だけではダメで、「変更を保存」まで押さないと、リダイレクト機能に反映されません。