このたび、ずっと使っていたさくらのレンタルサーバーから、wpXのレンタルサーバーに引っ越しました。理由は、さくらのサーバーで503エラーが出たり、処理速度が遅かったりしたためです。
このブログは、もともとマルチサイト機能を使って複数のブログを運営していたため、引っ越しは一筋縄ではいかず、何度も諦めようと思ったほどでした。
シングルサイトの場合、マルチサイトの場合それぞれの引っ越し方法について、やったことを簡単にまとめておこうと思います。
もくじ
最初にさくらと契約した理由
はじめにサーバー移転を決めた経緯について書いておきます。
このブログは、WordPressについて右も左もわからない状態から始め、さくらインターネットのレンタルサーバ(スタンダード)と契約していました。
最初にさくらのレンタルサーバを選んだのは、「WordPressことはじめ」というとてもわかりやすい解説書が公開してくださっているサイトがあり、その中でさくらが推奨されていたからでした。
FTPソフトとか独自ドメインとか、すべてがまったくの初体験であった当時は、このマニュアルがなければ、ブログをはじめることはできなかったと思います。
その後もいろいろトラブルはありましたが、さすがにさくらインターネットに関する情報はWeb上に充実していて、初心者にはありがたいことばかりでした。
さくらからWPXに移ることにした理由
ところが、最近、ブログがやたらと重くなってきたのを感じました。ダッシュボードで作業をしていると、ときどき数十秒くらい画面が切り替わらないことがありました。
また、ブログにアクセスすると、動作が重かったり、ときどき503エラーが出るようになりました。
高速化のプラグインを入れても、動作は変わりませんでした。てっきり、同じサーバーに重いサイトでもあるのだろうと思っていたのですが、Webで情報を集めてみると、どうやら、そうではない様子。
さくらのレンタルサーバーで503エラーの報告がどっさり見つかってびっくりしました。
500エラー503エラー連発したため、WordPressをさくらレンタルサーバーからエックスサーバーに移転しました。せっかくなので移転方法を図解で解説します! | アフィリエイトJAPAN
503エラー多発!WordPressをさくらレンタルサーバからエックスサーバーに移転する方法
さくらレンタルサーバーでWordPressで500エラー(503もね)とプロセスのメモリ消費量(途中経過? / もっと知りたいリンゴあれこれ
どうやら、サイトが拡大してきた結果、さくらのサーバーでは扱えないようになってきたようです。ちなみに、うちのブログは、1500UU/日、2500PV/日といったレベルです。
さくらのエラーを経験している人たちによると、解決策はサーバー移転しかないようで、選ばれているサーバーは「エックスサーバー」でした。
さくらの上位プランに移行するという選択肢はどうだろうと思ったのですが、さくら公式の回答で変化がない、とされている情報があったり、上位プランへ移行するときに手動で引っ越しする必要があったりと、他サーバー移転の選択肢のほうがよさそうでした。
wpXを選んだ理由
wpXはエックスサーバーと同じ会社が運営する、WordPress専用サーバーです。
■WordPressのみだが、シンプルな管理が可能
■マルチサイトは不可
■キャッシュ系プラグインなしで最適化、高速化してくれる
■データベースのバックアップなど管理が高機能
といった特徴があります。
このブログはマルチサイトとして運営していたので、どうするか迷ったのですが、マルチサイト化による弊害も感じていましたし、キャッシュ系プラグインの扱いの大変さも感じていたため、意を決して移転することに決めました。
しかしまさかこれほど困難な道のりになるとは思いもしませんでした。
以下に行程を記します。この記事を書くに当たり参考にさせていただいたブログはこちらです。わたしの記事でわかりにくい部分があれば、ぜひ参照してください。
[Wordpress]ド初心者がさくらからwpXサーバーへ初めての引越し(前編) | Bomb*log
1.ドメインの登録とWordPressインストール
wpXのサーバーには、wpXとレンタルサーバーとwpXクラウドの二種類があります。それぞれの特徴は社長ブログに書かれていますから、自サイトにあったものを選んでください。ここでは、レンタルサーバーの場合について書きます。
wpXクラウド、wpXレンタルサーバーの違い | エックスサーバー社長ブログ
まず、wpXレンタルサーバーを借りるには。トップページから「お申込み」をクリックして、画面に指示どおりに進んでいけば、14日間のお試しプランへ申し込むことができます。
次に独自ドメインを登録します。もともと引越し前のサイトに独自ドメインをあてているという前提で書きます。わたしはさくらで取得した独自ドメインを持っていました。独自ドメインがない場合はWPXで取得することもできます。
ドメイン料金一覧 / WordPress専用の超高速レンタルサーバー! wpX(ダブリューピーエックス)
独自ドメインを登録するには、管理メニューの「ドメイン追加設定」を選びます。この場合はさくらのドメインなので、「他者管理のドメインを追加する」に進みます。
一番上に、登録したい独自ドメインを入力して、Web認証にチェックを入れます。
まだ「ドメインの追加」は押さず、ページを下にスクロールしていきます。
下の法にあるWeb認証の説明書きのところから、wpx.htmlをクリックしてダウンロードします。
そのファイルをそのまま、さくらのレンタルサーバー のwordpressディレクトリの直下に、FTPソフトでアップロードします。wordpressディレクトリの直下とはwp-contentsなどの フォルダがある階層のことです。
アップロードしたら、ブラウザのアドレス入力欄に「http://独自ドメイン.com/wpx.html」と入れて、アクセスできるか試してみます。
無事アクセスできるようなら先ほど押さなかった「ドメインの追加(確認)」をクリックして認証を終わらせます。
次に登録した独自ドメインにWordPressをインストールします。ほとんど自動です。
サーバーの管理パネルの「新規インストール」から先ほど追加した独自ドメインを選び、必要事項を入力して、新規インストールします。
ここに入力するWordPressIDはログインするときに必要なのでメモしておきます。インストールしたら次の画面でパスワードが生成されるのでこれもメモ帳などにコピーしておきます。
2.hostsの設定
この時点ではダッシュボードにログインしようとすると、前のサーバーのブログにアクセスしてしまうので、hostsの編集をします。
そのままの設定ではさくらのレンタルサーバーの独自ドメインにアクセスしてしまいますが、自分のパソコンにあるhostsファイルを編集することで、wpXのレンタルサーバーの独自ドメインにアクセスすることが可能になります。
もちろん、アクセスできるのはそのパソコンを使っている自分だけです。
このhostsファイルを適宜書き換えることで、同じドメインをもつ、引越し前、引越し後の2つのサイトにアクセスすることができます。
hostsのファイルの場所については、以下のページの下の方に記されています。
マニュアル – WordPressの移転 / WordPress専用の超高速レンタルサーバー! wpX(ダブリューピーエックス)
ここで書くのはWindows環境の場合です。Mac環境ではHosterというアプリについて調べてください。
hostファイルの場所がわかったら、テキストエディタ(さくらエディタやTeraPadなどのフリーソフト)を右クリックして、「管理者として実行」を選び、立ち上げます。そうする必要があるのは、普通に起動しただけだと、重要なファイルの場合、書き込み制限で編集できないからです。
ソフトを起動したら、先ほど調べた場所からhostsファイルを開きます。hostsファイルの一番下に
wpXサーバーのIPアドレス (半角スペース)http://独自ドメイン.com/
というように記します。wpXサーバーのIPアドレスは、「サーバー基本情報」から調べられます。
hostsファイルの編集が終わったら、「WordPressの一覧・設定」からダッシュボードにログインします。先ほどメモしたユーザー名とパスワードを使います。
設定が正しくなされていれば、wpX側のまっさらなWordPressにアクセスできるはずです。
もしパスワードがわからなくなっていたら、管理パネルの「WordPressの一覧・設定」→ログインしたいサイトの「設定」→「管理者パスワードの初期化」から再取得できます。
3.FTPソフトの設定
新しいサイトにファイルをアップロードするために、FTPソフトを設定します。
「WordPressの一覧・設定」→ログインしたいサイトの「設定」→「FTPアカウント設定」を選びます。
次に「設定変更」を選びますが、「FTPアカウント名」と「FTPホスト名」をメモ帳にでもコピーしておいてください。
「すべてのファイル・フォルダにアクセスする」にチェックを入れて「設定変更(確認)」を押します。
次の画面でアカウントIDとパスワードが生成されるので、これもメモ帳などにコピーします。
ここまで終えたら、さきほどからメモしたいろいろな情報を、お使いのFTPソフトに入力して、サ―バーに接続してください。入力する場所や名前はFTPソフトによって少し違いますが、それぞれのFTPソフトの解説サイトを見ながら、試行錯誤すればできると思います。
4.データベースのエクスポートとインポート(シングルサイト編)
次にデータベースのエクスポートとインポートです。データベースには記事やカテゴリーなどのデータや、各種設定が含まれます。
シングルサイトの場合、手順はそう難しくありません。
まずさくらのレンタルサーバのphpMyAdminにアクセスします。場所は、サーバーコントロールパネルの「データベースの設定」です。
次の画面の「管理ツールログイン」を選びます。
phpMyAdminに入ったら、左のサイドバーから、使っているデータベースを選び、上の「エクスポート」タブをクリックします。
次の画面では、まず「構造」の部分の一番上のチェックボタンにチェックを入れます。
次いで「データ」の部分ですが、作成するクエリの最大長が50000になっています。あとで説明しますが、Bigdumpを使ってインポートする場合は、ここを100にします。今回は、50000のままで大丈夫です。
最後に右下の「実行する」を選びます。
これで、sqqlファイルがパソコンにダウンロードされます。
次に、このsqlファイルを新しいサーバーにインポートします。wpXサーバーでは、データベースに入らなくてもインポートできます。
管理パネルの「WordPressの一覧・設定」→インポートしたいサイトの「設定」→データベース管理の「データベースのバックアップ」へと進みます。
インポート(復元)の部分の「参照」から先ほどのsqlファイルを選び、「インポートを実行」します。
これでうまくいけばいいのですが、sqlファイルのサイズが大きすぎたりすると、インポートに失敗します。その場合は、Bigdumpというものを使います。
Bigdumpは、sqlファイルをFTPソフトでサーバーにアップロードし、データベースをインポートできるプログラムです。
使い方については詳しいサイトがいくつもあるので、そちらに譲ります。
注意点は、先ほどsqlをエクスポートしたときの、「クエリの最大長」です。その部分の数値を50000→100にして、再度エクスポートし、そのsqlファイルを使います。
大きいサイズのSQLをインポートしてくれる「BigDump」 | 日々の覚書…日常のことも少しだけ
上記サイトによると、Bigdump.phpを書き換える際に
$db_server:データベースサーバ
$db_name:データベース名
$db_username:データベースユーザ名
$db_password:データベースパスワード
を入力する必要がありますが、一番上のデータベースサーバは「localhost」で、そのほかはwp-config.phpに載っています。FTPソフトで、WordPress直下にあるwp-config.phpを確認して、Bigdump.phpを書き換えてください。
そのほかの手順は各サイトの説明を見て実行してください。
大きなサイズのsqlファイルでも、これでインポートできます。
もしどれをやってもうまくいかない場合は、以下のマルチサイト編の手順を使ってください。
5.データベースのエクスポートとインポート(マルチサイト編)
さて、問題はマルチサイトの場合です。
このブログのように、マルチサイトで運営している場合は、上記の方法は使えません。wpXのサーバーはマルチサイトは不可なので、そのまま引っ越すことはできません。マルチサイトのそれぞれのサイトのデータベースを個別にエクスポートする方法もありません。
もうこの時点で、サーバー移転をやめようか、あるいはエックスサーバーなど、マルチサイト可のサーバーに移転しようかと思ったぐらいなのですが、今のうちにマルチサイトを解除していないと後々ややこしくなることもわかっていました。
マルチサイト化したときは、デメリットを考えていなかったのですが、個別にMySQLを管理できなかったり、一部のプラグインが動作しにくかったりするのは、危険なことです。
いざブログが破綻して、バックアップから復元しようとしたとき、マルチサイトであるがゆえに複雑すぎて復元に失敗するということもありえます。
マルチサイトでもphpMyAdminからデータを移行し、サイトを分離する方法もあるようですが、非常に複雑です。どうしてもそれを望む場合は、以下のサイトの記事が参考になります。
マルチサイト化したワードプレスの1サイトのドメインの引っ越し
しかしこれが難しすぎるようなら、それぞれのサイトをWordPress付属のxml形式のファイルでエクスポートするしかありません。
メインブログのほうはマルチサイトを解除してシングルサイトに戻してから移行するという手もありますが、サブブログは消滅してしまうので、サブブログの記事データはxml形式で取り出すしかありません。
サブブログも移行する場合は、wpXサーバーにサブブログのドメインを登録して、新規にWordPressをもう一つインストールして移行してください。
この作業をするには、もとのさくらのサーバーのブログのダッシュボードにアクセスする必要があります。必要に応じてhostsをもう一度書き換えてください。
元のサーバーのダッシュボードに入ったら「ツール」→「エクスポート」から「エクスポートしたファイルをダウンロード」して保存します。これでxml形式のファイルがダウンロードされます。
次の再度hosrsを書き換えて、新しいブログのダッシュボードに行きます。「ツール」→「インポート」→「WordPress」を選びます。
画面の指示に従ってプラグインをインストールします。
「参照」からさきほどのxmlファイルを選び、インポートします。
途中で、以下の画面が表示されるので、アタッチメントのチェックボックスにチェックを入れます。そうすると、記事の添付画像などを自動でコピーしてくれます。最後に「Submit」を選び、インポートを完了します。
問題はxmlファイルによるインポートだと、画像の紐付けなどがうまくいかない場合が多いことです。また、サイトのプラグインの設定などはすべて初期のままで、設定は受け継がれません。
xmlファイルによるデータの移行は、他の方法が使えないときの最終手段です。
サイト移転時にWordPress記事をXML形式でエクスポート&インポートする手順 – ネタワン
こうしてサブブログを抽出できたら、マルチサイトを解除して、メインブログをシングルサイトにして、データベースの移行をすればいいのですが、解除の方法は、以下のサイトの説明が参考になります。
WordPress のマルチサイトを無効化して元の状態にリセットする方法 | ウェブル
しかしわたしの場合は、データベース接続確立エラーが出て解除できなかったので、メインブログもxml形式で移行しました。こうしたエラーが出たりする部分がマルチサイトのやっかいなところで、解除したかった理由でもあります。
?6.ファイルをFTPソフトでコピー
このようにして、記事データを新サイトに移せたら、あとは、ファイルの移行だけです。ファイルにはプラグインや添付画像が含まれます。
FTPソフトで、前のサーバーのwp-content全体をデスクトップにダウンロードします。ダウンロードが終わったら、それを新サーバーのほうのwp-contentにアップロードします。
これには非常に時間がかかるので、FTPソフトに指示だけ出したら、寝ている間にやってもらうのがいいかもしれません。
xml形式で記事をインポートした場合は画像がコピーされている上、紐付けができないのでuplpadsはいらないと思います。pluginとthemesだけで十分です。
とはいえ、すべての画像がコピーされているとは限らないので、自分で確認して、足りないものがあったら個別に記事を編集し直す労力が必要です。
7.各種設定を確かめる
プラグインやテーマをアップロードし終えたら、新サーバーのダッシュボードに入って、以前の設定の通り、各プラグインやテーマを有効化します。
また「設定」→「パーマリンク設定」を以前と同じ設定にします。
各設定については、できればパソコンを二台用意して、hostsを変更していないパソコンで旧サーバーのダッシュボード、hostsを書き換えたパソコンで新サーバーのダッシュボードを表示し、見比べながら設定すると良いかもしれません。
プラグインのAkismetとJetpackは、メールアドレスやサイトアドレスを通して、外部のWordPress.comのデータと紐付けられているようです。
WordPressのデータベースにこれまでの情報が保存されているわけではないので、ブログを公開してから、もう一度紐つければ、以前のAPIキーや統計情報のデータなどがそのまま利用可能です。
わたしの場合は最初はエラーが出て設定できなかったのですが、ドメインのネームサーバーを書き換えて、サーバーの支払いを済ませた後(WPXサーバーは支払いを済ませるとメール機能が利用できるようになる)に設定すると簡単に紐付けできました。
8.ネームサーバー編集
新しいサーバーのブログが、旧サーバーのブログと遜色ない状態になったなら、いよいよ新サーバーのブログを公開します。
以下に書くのは、独自ドメインをさくらで契約している場合です。
まずさくらのサーバーの会員メニューにログインし、「契約情報」を選びます。
契約ドメインの確認を選びます。
「ドメインメニュー」をクリックします。
今回引っ越しした独自ドメインの「WHOIS設定」を選びます。
一番下の「ネームサーバー」の部分を書き換えます。
変更後は、以下のように書き換えます。
以下のマニュアルを参考にしてください。
マニュアル – ネームサーバーの設定 / WordPress専用の高速クラウドサービス wpX(ダブリューピーエックス)クラウド
これで、しばらくすると、新しいサーバーのブログにアクセスが集まるようになります。Google AnalyticsやJetpack統計情報などは、どちらのサーバーでも設定が有効になっていれば、問題なく集計してくれます。
もし単なるサーバーの引っ越しではなく、新しいドメインを取得して引っ越している場合は、旧ドメインのブログに「Redirection」などのプラグインを入れて301リダイレクトすることをお忘れなく。
最後のステップはwpXのサーバーの本契約を済ませることです。お金を支払えば、メールアドレスなどの機能も使えるようになります。
これで、さくらのサーバーから、wpXのサーバーへの引っ越しは終了です。お疲れ様でした。
残る問題はさくらのほうで取得したドメインとメールアドレスの移管ですが、これらはこのブログでもまだ行っていません。
さくらのサーバーの契約期間が終わるまでにメールアドレスの移管は済ませる必要がありますが、もう少し期間があるので、順を追ってやっていくつもりです。
wpXのサーバーに移ってよかった点はまだあまり実感していませんが、少なくともダッシュボードで何十秒も固まるのはなくなりました。サイトの表示速度は6秒台とそれほど速くありませんが、移転前よりましなのかもしれません。
またマルチサイトを解除したことにより、ブログを管理しやすくなった点はよかったです。
▼追記:独自ドメインの移管
さくらインターネットで取得した独自ドメインをwpXに移管するのも終えました。簡単に手順を説明すると、
1.さくらインターネット「会員情報」→「契約情報」→「契約ドメインの確認」からドメインの転出依頼をする。数日経つと、オースコードを記したメールが送られてくる。オースコードとは認証鍵のことで、今後の手順に必須。
詳しくはgTDLドメイン転出手順│さくらインターネットを見てください。
2.wpXの「サーバーの管理」→「契約関連」→「追加のお申し込み」→「ドメイン移管のお申込み」から、さきほどさくら側で転出依頼したドメインを登録する。先に料金の支払いを済ませる。
3.「契約・会員情報の管理」→「 契約情報」→「独自ドメイン契約情報」から移管申請し、認証鍵を入力する。数日で移管完了のメールが届く。
詳しくはマニュアル-ドメイン移管│wpXをご覧ください。