今月、wpblogで利用していたWordpressのサイトを、独自ドメインの別サーバーへ引っ越しました。
なぜwpblogから引っ越したかというと・・・
- wpblogの利用には定期的な更新申請が必要になり、うっかり申請を忘れて利用停止になってしまうのが不安
- スマートフォンで閲覧する時に下部にスクロール追従の広告が表示されるのが嫌だ
- wpblogはドメインパワーがかんばしくないかも
といった理由です。
私は、
wpblog (http://****.wpblog.jp) → ドメイン取得したスタードメインの無料サーバー (https://********.com)
に引っ越したので、その経緯を自分用のメモ的にまとめていきます。Wordpress簡単インストールの前に http → httpsにSSL化も行っています。
今回は
- 「手間がまぁまぁかかるが、エラーなどをなるべく出さずに引っ越す」
- 「データベースを一切触らない」
- 「一発でデータを全部引っ越しができるプラグインは使わない」
- 「テーマの設定は最初から行う」
- 「非SSL → SSL化する」
- 「wpblogのGoogle評価を新ドメインのサイトへ引き継ぐ」
で移転を行いました。
使用したプラグインは、
- Widget importer & Exporter
- Redirection
- File Manager
- Search Regex
の4つです。
wpblogから移転を考えていらっしゃる方は、参考にしてみて下さい。スターサーバーフリーをご利用の方は、wpblog → スターサーバーフリーに読みかえて下さい。他社のサーバーでも基本的な手順は変わらないです。
目次
作業について
一連の作業をおおまかに分けると・・・
- WordPressのバージョンの確認
- ドメイン取得
- バックアップ
- データ移行
- 転送作業
- Google search consoleなどの引き継ぎ設定
です。3日くらいかかりました。
WordPressなどのバージョンの確認
旧サイト(wpblog)と新サイトのそれぞれのプログラムのバージョンを同じにしておくと、引っ越しの際にエラーの可能性を低くすることができます。
確認することは、
- WordPressのバージョンの確認
- テーマのバージョンの確認
- PHPのバージョンの確認
です。こちらのバージョンをメモしておきました。
WordPressのバージョンの確認は、管理画面の[ダッシュボード]から真ん中辺りのこちらで確認できます。
テーマのバージョンは、[外観]→[テーマ]→ インストールしているテーマにマウスを合わせると出てくる[テーマの詳細]から。
PHPのバージョンは、スターサーバーにログインし、[スターサーバーフリーのサーバー管理ツール] → [PHPバージョン切替設定] から確認できます。
※ 私はPHPのバージョンが5.1だったので、7.1に変更しました。(引越し先のスタードメインの無料サーバーは5.1に対応していないので)
wpblogで7.1に対応していないプラグインがインストールされている場合、PHPのバージョンを変更すると画面が真っ白になることがあるので、プラグインをすべて停止にしてからPHPのバージョンを変更した方が良いです。
ドメイン取得
ドメイン取得はスタードメインで行いました。スタードメインの場合、1ドメインに付き、無料のサーバーが1つもらえます。スターサーバーよりも少し機能が落ちますが (メールアドレスがもらえない、容量が3GBまで、など)、wpblogやスターサーバーフリーよりも高機能かつ、広告が一切表示されないので、無料サーバーで十分だと思い、申し込みました。ちなみにドメイン代(無料サーバー付き)は1年で1,180円(税抜)でした。
ドメイン取得から~サーバー関連の設定~SSL設定の作業順序は
- スタードメインで独自ドメインの取得
- スタードメインの無料サーバーの申し込み
- FTPパスワード変更 (してもしなくてもよい)
- 無料独自SSL追加
[2] のスタードメインの無料サーバーを申し込んで利用可能になるまで、約3時間かかりました。
14:04 申し込み
16:53 利用可能
約3時間くらいかかるので、何かボーッと他の事をしていたら、利用可能になっていました。※ ブラウザで新ドメインでアクセスして「無効なURL」画面が出なくなったらOK。
この時間に旧サイト(wpblog)のバックアップをしておくと良いかもしれません。
バックアップ
- 記事のデータ
- 画像やプラグインのデータ
をそれぞれバックアップします。
記事データは、Wordpressの管理画面の [ツール] → [エクスポート] → [すべてのコンテンツ] → [エクスポートファイルをダウンロード]ボタンから行います
画像・プラグインのデータは、FTPソフト(Filezilla)で [upload] [plugin] フォルダをパソコンに保存して下さい。
データ移行の準備作業
データベースを編集する方法もありますが、難しくて気が狂いそうなのでやめました。なので、手動で行います。
- 新サイトにWordpressを簡単インストールをする
- 新サイトのWordpressのバージョンを旧サイト(wpblog)で使っていたバージョンに戻す (どちらにも最新版を入れる / 入れている場合は不要な作業です)
- 新サイトに旧サイト(wpblog)と同じテーマをインストール (私の場合はSimplicity)
- WordPress管理画面で、Wordpressアドレス・サイトアドレスを新しいURL(https://~)に変える
まず、新しいサイトにWordpressを「簡単インストール」します。
■ WordPressのインストール方法(簡単インストール) | レンタルサーバー【スターサーバー】
旧サイト(wpblog)と新サイトのWordpressが同じバージョン(最新版)の場合はインストール後は何もしなくてOKです。しかし、旧サイトでバージョン4.9以前を使っていた場合は、新サイトにも同じ4.9以前のバージョンを入れる必要があります。
旧バージョンに戻す方法はこちらの方の下記のサイトを参考にして行いました。分かりやすいです。
■ WordPressのダウングレード方法【WordPress 5.0を過去の4.9.8に戻す】
そのあと、旧サイト(wpblog)に入れていた同じバージョンのテーマ(Stinger、Simplicity、Cocoon、JINなど)を、新サイトにWordpressの管理画面からインストールしてください。
私はSimplicityを使っているので、子テーマもインストールしました。
テーマをインストールしたら、[設定] → [パーマリンク設定] (投稿時の記事アドレス /?p=123などを決めるやつ)を 自分が使用している設定にしておくと楽です。
あと、新サイトの[設定] → [一般] からWordpressアドレス・サイトアドレスを http → https のアドレスに変更しておこう。
データの移行
旧サイト(wpblog)から新サイトへ記事を移動する
旧サイト(wpblog)の記事データをバックアップします。
1. 旧サイト(wpblog)のWordpress管理画面で記事データをエクスポートする
[ツール] → [エクスポート] → [すべてのコンテンツを選択] → [エクスポートファイルをダウンロード]
パソコンに xmlファイル が保存される。
2. 新サイトのWordpress管理画面で記事データをインポートする
[ツール] → [インポート] → WordPressの欄の「今すぐインストール」をクリック → インポーターを実行の文字をクリック
[ファイルを選択ボタン] → [先ほどダウンロードしたxmlファイルを選択] → [ファイルをアップロードしてインポート] → 添付ファイルをダウンロードしてインポートするにチェックを入れる → 実行
これで記事や記事内の画像がちゃんと表示されているかと思います (ヘッダーの画像はまだです)。
旧サイト(wpblog)から新サイトへ画像・プラグインを移動する
記事データを移行させたら、次は画像・プラグイン・ウィジェットのデータを移動させます。手動で行うので時間と手間がかかりますが、エラーなく行えると思います。
流れとしては
- FTPソフトで画像フォルダとプラグインフォルダをアップロード上書き
- ウィジェットをWidget Impotrter & Exporter プラグインを使って、データを移動
です。
まず、先ほどダウンロードした [uploads] と [plugins] フォルダをFTPソフト(Filezilla)を使って、新サイトの [wp-content] のフォルダ内へアップロード上書きをする。
「常にこのアクションを使用する」にチェックを入れると一気にアップロードできます。
ウィジェットを移動する
その後、旧サイトのウィジェットを新サイトへ移動させるために、Widget Impotrter & Exporter プラグインを使います。
■ Widget Importer & Exporter – WordPress プラグイン | WordPress.org
旧サイト・新サイト両方にWidget Impotrter & Exporterをインストールします。Wordpress管理画面 → プラグイン → プラグインを追加 から 「Widget Importer & Exporter」と検索して、インストールする
- 旧サイト(wpblog) → ウィジェットのエクスポート
- 新サイト → ウィジェットのインポート
で旧サイトのウィジェットが新サイトと同じように表示されます。すでに設定されているウィジェットと重なっているものがあるかもしれないので、調整してみてください。
まだ、旧サイトとデザインなどが違っていると思いますので、元のサイトのようになるように調整をしていきましょう。
Search Regex プラグインで新サイト内の内部リンクを変更する
新サイトの内部リンク(記事内で他の自分の記事を紹介しているURL)がまだ旧サイト(wpblog)のままになっているので、
「Search Regex」というプラグインを使って一括で新しいURLに変更します。
インストールをしたら、
このように旧サイト(wpblog)と新サイトのURLを入力します。Search pattern の文字列を Replace patternに書き換えられます。
Search → サイト内の文字列を検索 (まだ書き換えられない)
Replace → 書き換えた場合どうなるかチェックできる (まだ書き換えられない)
Replace & Save → 書き換える
Replace & Save ボタンを押したら一気に変換されますので、間違えのないようにしっかり確認して下さい。OKだと思ったら、Replace & Saveボタンを押して下さい。
手動でテーマの設定をする
ここからがちょっと時間がかかりますので、のんびりやると良いと思います。
旧サイト(wpblog)と新サイトのカスタマイズをじっくりやっていきましょう。プラグインを使わないで移転作業を行うと、こういった小さなことまで設定しないといけません。
エラーで画面が真っ白に・・・といった恐怖を味わいたくないので、旧サイトと新サイトのカスタマイズは一つ一つ手動で設定をしていきました。
調べたらテーマの設定を移行できるプラグインもあるそうです。面倒な方はそちらを使っても良いかもしれません。
■ WordPressのテーマカスタマイザー設定を別環境に移行できる「Customizer Export/Import」プラグイン
そして、一応、ここまででデータの移行は完了です!
次は旧サイトから新サイトへ転送の設定を行います。
転送作業
旧サイト(wpblog)と新サイトをそのまま2つ存在したままの状態にしておくと、Googleから「あんた、同じサイト重複していて、どっちかがコピーコンテンツだな」と検索順位を下げられるといった罰を与えられてしまいます。なので、ちゃんと転送の設定を行いましょう。
作業の順序は・・・
- 新サイトをGoogle Search Consoleのプロパティに追加をする
- HTMLファイルをFTPソフトで新サイトにアップロードしてサイトの所有権の確認をする
- 旧サイト(wpblog)に [File Manager] (プラグイン)をインストールし、 HTMLファイルをアップロード
- 旧サイト(wpblog)に [Redirection] (プラグイン) をインストールし、 新サイトへ転送の設定をする
- Google Search Consoleからアドレス変更を行う
新サイトをGoogle Search Consoleにプロパティの追加をする
Google Search Consoleに新サイトのURLを追加し、所有権の確認をします。
画面左のタブのサイトURLの右側にある「▼ボタン」から、[プロパティを追加] → [URLプレフィックス] にサイトを入力して追加をしてください。
サイトの所有権を確認する方法は、「HTMLファイルをアップロード」を選んで下さい!
HTMLファイルをダウンロードしてパソコンに保存をしましょう。
こちらのgoogle**********(英数字が並んでいる).htmlファイルをFTPソフトで新サイトへアップロードし、Google Search Consoleの画面で「確認ボタン」を押して完了です。
旧サイトに所有権用のHTMLファイルをアップロードする
旧サイト(wpblog)にプラグイン追加で「File Manager」をインストールします。
■ File Manager – WordPress プラグイン | WordPress.org
先ほど、Google Search Consoleからダウンロードして新サイトにアップロードした同じファイル ↓
google**********(英数字が並んでいる).html
を
[wp-admin] などのフォルダが並んでいる同じ階層にドラッグしてアップロードしてください (File Manager画面上に)。
こんな感じです。
これで、旧サイト(wpblog)は自分が所有している、とGoogleが確認できるようになります。
旧サイト(wpblog)に [Redirection] (プラグイン) をインストールし、新サイトへ転送
wpblogにアクセスした人を新サイトへ自動転送させるためには、wpblogに「Redirection」プラグインをインストールしてください。
■ Redirection – WordPress プラグイン | WordPress.org
設定は、
- Monitor permalink changes in WordPress posts and pages
- Keep a log of all redirects and 404 errors.
に チェックを入れ、[Continue Setup] で次のページへ。そのあと、[Finish Setup]。
転送設定は
ターゲットURL 「https://新しいサイトのURL$1」
正規表現をONにする
「転送ルールを追加」ボタンをクリック。(「」かっこは入れないで下さいね)
ソースURLになぜこの記述^(?!.*wp-login.php)をするのかというと、wpblogの管理画面は転送から除外するためです。これを書かないと、wpblogの管理画面に入れなくなります。
もし設定を間違って上手く転送しなくなってしまったり、wpblogの管理画面に入れなくなったら、FTPソフト(Filezilla)で、[wp-content]→[plugins]→ redirectionフォルダをフォルダごと削除して下さい。そうすると元に戻るようです。
こちらの方のブログに詳しく書かれています。
Google Search Consoleからアドレス変更を行う
こちらの昔のGoogle Search Consoleへアクセスをする
右上の歯車アイコンから「アドレス変更」画面へ
こんな画面が出ます (こちらはアドレス変更が上手く行ったあとの画像です)。
2,3番はすでに行っているので、一気に進めると思います。
これですべてのサーバー移転の工程は完了です。
新サイトの常時SSL化を行う
こちらは移転作業には含まれませんが、SSL化を行ったので、
http://******.com → https://******.com
へ自動的に転送 してくれる設定を行います。
下記のサイトにも詳しく書かれています。
■ Webサイトの常時SSL化 | レンタルサーバー【スターサーバー】
スタードメインの無料サーバーのwebFTP画面に入って、.htaccessを編集します。(スタードメイン管理 → ドメイン管理ツール → サーバー管理ツール → FTPアカウント設定 → WebFTP 「ログイン」)
RewriteEngine On RewriteCond %{HTTPS} !on RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
こちらを追記します。
このようにコードをコピーペーストして「上書保存」すれば、http → httpsへ転送されます。
画面が真っ白になったり、上手く転送しなくても何度も直せますので、しっかり確認して編集してみて下さい。
こちらが終わればほぼ完了です。
ウィジェットやプラグインなどの細々とした設定(プラグインの設定がデフォルトに戻っていたりするので)が残っていると思いますので、のんびりやってみて下さい。
まとめ
致命的なエラーなど一切なく、引っ越しが行えました。
しかし、wpblogからだとなかなか時間がかかるのかもしれません。皆さんもメモを書きながら移行作業を行うと分かりやすくて良いと思います。
それにしても、wpblogやスターサーバーフリーなどでサイトを運営なんてするもんじゃないですね。Wordpressのインストールの仕方を覚える、などといった触り程度で使用するのが良いのかもしれません。
wpblogは.htaccessにアクセスできない仕様になっていて、移転しようにも一手間かかりますし、.htaccessの編集を間違ってアクセスできなくなると、もう初期化しかなくなっておじゃん、となりますので大変ですね・・・