ロリポップが手軽で250円~、500円~といったプランで始める方が多く、その次のステップがエックスサーバというパターンがよくあるケースかと思います。
私の場合も御他聞にもれず、ドメインはムームードメインで取得し、サーバはロリポップのライトプランを長く利用していて、数か月前にスタンダードプランへプラン変更していました。しかし最近、ロリポップの不安定さに不満もあって、SSLが使えて良さそうなエックスサーバ(X10プラン)に引っ越しをしました。
引っ越しの際にはすでにネット上に数多く書かれている諸先輩方の引っ越し方法を参考にしたのですが、やり方が人によって違っていたりして、私自身、意外なところにハマったり失敗したりしました。
そんな経験から私なりに超やさしく「失敗しない引っ越し方法」を書いたつもりです。
はじめに、
引っ越しの作業は数時間かかります。
(私はドツボにはまって1日かかりました。)
また、当然ですが、引っ越し作業を終えてDNSの切り替えを終えるまでブログの更新や新しい投稿は休止する必要があります。
ブログ主はそれでいいのですが、ユーザーさんのコメントがその間にあると、タイミングによっては新サーバに持っていけないので素早く引っ越しすることが望ましいです。
なお、DNSの設定で新サーバーにネームサーバを書き換えても、実際にすべてのアクセスユーザーが新サーバにアクセスしてくれるようになるには、およそ2日間はかかります。
では手順から。
概略は以下となります。
- エックスサーバーを申し込み
エックスサーバの10日間お試しを利用して申し込み、エックスサーバから完了メールを受け取ります。 - エックスサーバにてドメインの追加とWordpressのインストール
エックスサーバーパネルにログインして、ロリポップから持ってくるドメインの追加と、「自動インストール」機能でWordpressをインストールします。 - エックスサーバのデータベースのWPテーブルの値を空にする
これで受け入れる側のサーバの環境が整います。 - 画像・写真、テーマなどの引っ越し
FTPソフトを使い、記事の画像・写真、テーマ、プラグインなどをロリポップからダウンロードし、エックスサーバーにアップロードします。 - データベースのデータを引っ越し
ロリポップのデータベースをエクスポート(出力)し、エックスサーバにインポート(入力)します。 - hostsを設定して新サーバにアクセスし、Wordpressを設定
DNSはまだ書き換えていない(ロリポップのサイトに向いている)状態なので、自分のPCだけはアクセスして設定できるよう、hostsを使います。 - エックスサーバの正式申し込みとメアド設定
エックスサーバがお試し期間中ですとメールアカウントの作成ができませんので正式に契約(支払)手続きをします。 - DNSの書き換え(切り替え)
書き換えたネームサーバ情報の浸透(反映)を待ちます。
エックスサーバー(xserver.ne.jp)は、初めてエックスサーバーを利用する方に対して常に10日間お試しのサービスを提供しています。
そこからX10プランを申し込みます。(お試しのため支払の手続きはありません)。
手続きが済むと、サーバーアカウント設定完了メール「■重要■サーバーアカウント設定完了のお知らせ (試用期間)」が届きます。
メールには会員IDほか、ユーザーアカウント情報として、会員ID、パスワード、インフォパネル(契約情報)のログイン画面のURL、サーバーパネル(サーバ管理画面)のURL,サーバーID、パスワード、初期ドメイン名などが記されています。
初期ドメインとは、エックスサーバーに申し込んだ際、必ず貰うエックスサーバーのサブドメインですが、独自ドメインを使う場合は特に利用することはありません。
メールに記されているサーバーパネルへのログインIDとパスワードを使ってエックスサーバーのサーバーパネルにログインし、サーバの初期設定をします。
サーバーパネルにログインしたあと、
サーバーパネル > 【ドメイン】ドメイン設定 > ドメインの追加設定 に進みます。
(ドメインの追加設定画面)
あなたがロリポップで使っているドメインを追加登録したら、そのドメインにWordpressをインストールします。
サーバーパネル > 【ホームページ】自動インストール > ドメインの追加設定 に進みます。
ドメイン選択画面で自動インストールを設定するドメインを選択、Wordpressを選択して進み、ブログ名、ユーザー名、パスワードなどを入れます。
ここでのポイントは2つ。
(1)インストールURLは、引っ越し元と同じにする(変更しない)。
(2)データベースは、「自動でデータベースを生成する」を選択。
(画面イメージ)
(1)のインストールURLに関しては、引っ越し元と変えてしまうと、投稿記事にある画像のパス(URL)を手作業で変えなければならなくなります。
例えば引っ越し前はexample.jp/wordpress/だったのに、新しいサーバではexample.jp/wp/にしたとか、example.jp/に入れるとかは避けるべきで、変えてしまうと投稿した画像のURLを1つずつ修正しなければなりません。
そもそもどこにインストールするか、という設定で、ブログのURLとは違いいますので引っ越し元と同じディレクトリを指定することがベストです。
(指定例)
ブログのURL:example.jp
インストールURL:example.jp/wordpress
また(2)のデータベースに関しては、自動でデータベースを生成させてTable(データを格納する器)を作っておき、中身はあとで消して空のテーブルをインポートの際に使います。
さて、自動インストールの確認画面では
○以下のスクリプトをインストールしますか?
(中略)
MySQLデータベース名 ●●●●●_wp1
MySQLユーザ名 ●●●●●●●●
MySQLパスワード ●●●●●●●
(後略)
と表示されますので、MySQLデータベース名、MySQLユーザ名、MySQLパスワードをメモしておき、「インストール(確定)」ボタンをクリックします。
すると完了画面で
http://(追加登録したドメイン)/wordpress/wp-admin/
からアクセスし、以下の情報でログインしてください。
と出ますが、DNSはまだロリポップのWordpressに向いたままなので、クリックしてもロリポップのWordpressのログインに行ってしまいますから、この段階では無視してください。
WordPressを自動インストールした際に「自動でデータベースを生成する」で作ったデータベース(Table)の中身を空にします。
まず、サーバーパネルに戻り
データベースにある「phpmyadmin(MySQL5.7)」をクリックすると認証を求められます。
さきほどメモした
MySQLユーザ名とMySQLパスワードを入力してphpmyadminを開きます。
もしパスワードを忘れてしまった場合は「MySQL設定」> 「MySQLユーザ一覧」でパスワード変更が可能ですし、ユーザーの追加もできます。。
「phpmyadmin(MySQL5.7)」にログインして、画面の左のメニューから「information_schema」ではないほう、「ログインID_wp1」といった名前がついているほうをクリックし、「構造」を選択すると下記のような画面になるので、画面下の「すべてチェックする」にチェックを入れます。
(phpmyadminの画面イメージ)
「チェックしたものを空にする」を選択。
「以下のクエリを本当に実行しますか?」で「はい」をクリックします。
これでデータベースは「器」だけを残して、中身は空になります。
これでロリポップのデータをインポートする準備ができました。
まずはFTPソフトを使ってロリポップのWordpressから必要なファイルをダウンロードします。
※/Wordpress というディレクトリ内にインストールされている場合を想定しています。
ダウンロードするのは「wp-content」内の「uploads」、「themes」、「plugins」ですが、いったんバックアップの意味で「wp-content」を丸ごとダウンロードでもかまいません。
基本、必須なものは
/wordpress/wp-content/uploads
(写真や画像など)
です。
テーマ、つまりブログのデザインテンプレートをカスタマイズされている場合は
/wordpress/wp-content/themes
も必須となります。
なお、
/wordpress/wp-content/plugin
(プラグイン)
ですが、このプラグインに関しては、FTPで新サーバにアップロードせず、同じものを新たに新しいWordpressでインストールしたほうが良いと考えていますが、プラグイン検索して結果見つからない場合もあるため、念のためのダウンロードとお考えください。
(FFFTPソフトで見たサーバ側の画面)
ロリポップからダウンロードが完了したら、次はエックスサーバーへアップロードです。
エックスサーバーのFTP接続は、エックスサーバーから送られてきたメールにも下記のように記されています
■FTP情報
——————————————
FTPホスト名(FTPサーバー名) : xxxxx.xserver.jp
FTPユーザー名(FTPアカウント名): xxxxxxxxx
FTPパスワード : xxxxxxxxx
——————————————-
エックスサーバーにFTPで接続をすると、追加したドメイン名のついたフォルダがあり、開くと「public_html」があります。
この「public_html」がホームページとなります。
あとはロリポップとおなじように
wordpress > wp-content と進むと「uploads」フォルダがありますので、FTPで「uploads」の中身をアップロードします。
丸ごと「uploads」を上書きしてもいいですが、枚数が多い場合は途中で失敗する場合もあるため、中にある西暦のフォルダ単位でアップしたほうが良いかも知れません。
また、テーマをカスタマイズされている場合は
/wordpress/wp-content/themes
もアップロードします。
カスタマイズしてなくてテーマ検索で見つけることができるようなテーマなら、あとでWordpressの管理画面で同じテーマをインストールしてもかまいません。
プラグインは、基本的には、同じものを新たに新しいWordpressでインストールしたほうが良いと思います。
そのため、いったん保留(FTPでアップロードはしない)としてください。
まず、ロリポップのデータベース(Wordpressのテーブル)をエクスポート(出力)します。
ロリポップの管理画面から WEBツール > データベースと進み、Phpmyadminにログインします。
1.左のメニューでWordpressのデータベース(information_schemaじゃないほう)を選択します。
2.右上のエクスポートを選択します。
3.エクスポート方法:簡易 – 最小限のオプションだけ表示、を選択します。
あとはデフォルトのまま、実行ボタンを押して、xxxxxxx.sql(拡張子がSQLとなっているファイル)がダウンロードされます。
(エクスポートの画面例)
これでxxxxxxxx.sql という(xxxxxxxxの部分はダミーですが)ファイルがダウンロードされたかと思います。
それをエックスサーバーのデータベースにインポートします。
エックスサーバーでデータベースのWordpressのテーブルを空にしましたが、そこに今度はインポートをします。
PhpMyAdminにログインし、Wordpressのテーブルを選択します。
次に
〇アップロードファイルを選択(最長: 2,000MiB)
〇ウェブサーバ上のアップロードディレクトリ /var/lib/phpMyAdmin/upload/ から選択する:
の選択肢から、1つ目の「アップロードファイルを選択」を選びます。
(インポート画面)
そしてさきほどのでxxxxxxxx.sqlを「ファイルを選択」ボタンで選択して「実行」を押します。
私の場合、ここまでは良かったのですが、Wordpressの入っているデータベースに別のデータベース(ログ分析系)も入れていて、それも入れようとしてエラーを連発してしまいました。
新しいサーバのデータベースに、そのログ分析系のテーブルがなかったことに起因しますが、同じように、空のWordpressのテーブルを作らないままインポートをチャレンジして、DBのインポートエラーを連発しました。
私の知識不足でインポートすればテーブルも生成してくれると思い込みをしていたことに起因していました。
Wordpressを自動インストールした際に「自動でデータベースを生成する」を選ばないで、スキルの低い自分が高度なことをやろうとしたことが原因だったと思います。
さて、インポートが正常に終了したら次のステップです。
さあ、やっと新しいほう(エエックスサーバーには動作確認URLックスサーバー)ブログを確認します。
DNSはまだロリポップのネームサーバーに向いているので、自分だけエックスサーバーのブログにアクセスする方法です。
DNSはまだ書き換えていない(ロリポップのサイトに向いている)状態なので、そのままではWordpressの管理画面にアクセスできません。そのため自分のPCだけは新しいWordpressにアクセスできるよう、PCにあるhostsというファイルを一時的に書き換えます。
まずは新サーバーのIPアドレスを確認します。
新しいサーバーのIPアドレスは、サーバーパネル > 【ドメイン】DNSレコード設定 > ドメイン選択画面 > DNSレコードの一覧 に書いてあります。
(DNSレコードの一覧)
そこに書いてあるIPアドレスをメモしておきます。
そして(Windowsユーザーさんは)メモ帳を右クリックで「管理者として実行」で起動します。
hostsファイルを管理者権限のメモ帳で開きます。
Windows7や8、10の場合は、
\Windows\System32\drivers\etc\
にあると思います。
Macは/etc/hosts/です。
hostsを開いたら、最後に「IPアドレス(半角スペース)ドメイン名」を書き、上書きします。
(例) 123.45.678.90 example.jp
このあと、若干タイムラグがありますが、ブラウザで(引っ越し元のWordpressと同じ)ログインURLにアクセスします。
(例)http://(追加ドメイン)/wordpress/wp-login.php
アクセスできたらログインして、各種の設定をします。
以前入れていたプラグインを探し、インストールし、有効化します。
どうしても同じプラグインが検索に出てこない場合は、ダウンロードしておいたプラグインを、FTPで同じ階層に入れてみてください。
なお、エラーを起こすようであればFTPでアップロードしたプラグインを削除してください。
この段階は意外に時間がかかります。
「あれ、ロリポップのほうはどうだったっけ?」
という場合はhostsの記述を元に戻して確認します。
そこは結構行ったり来たりしましたが、どっちを見ているのか一瞬わからなくなるので、自分はブログタイトルの説明文を一時的に変えました。
なお、エックスサーバーには動作確認URLという機能がありますが、
注意書きには残念ながら
動作確認URLの機能では、 WordPress等の一部プログラム(※)では正常に確認できない場合があります。
CMSご利用の場合は、hostsファイルを編集して確認してください。
と書かれていました。
私はこの便利機能をあとで知りましたのでチェックはしていませんが、エックスサーバーがダメと言っているのでやはりhostsで切り替えるしかないかと思います。
独自ドメインのメアドを使っていない方は、次のステップの「DNSの書き換え(切り替え)」が先でも問題ないですが、使っている方は正式申し込みをしないとメアドの設定ができないため、DNSの書き換え前に契約を済ませます。
エックスサーバーの管理画面でメールアカウントの作成や、メール転送の設定、もしくは送受信サーバの情報を確認してメーラーの設定を済ませます。
重複期間中はどうするかについては別件で記事を書きましたのでご参照ください。
(ご参考)メールサーバ引っ越し時の手順とメーラーの一時的な設定方法。
私の場合はドメインはムームードメインで取得し、ムームーにてDNS設定していたため、その例を書きます。
ムームードメインの管理画面(コントロールパネル)にログインします。
左のメニューから「ドメイン操作」をクリックし、「ネームサーバ設定変更」を選択。
該当するドメインの「ネームサーバ設定変更」ボタンをクリック。
「GMOペパボ以外 のネームサーバを使用する」を選択して、エックスサーバーのネームサーバーを5つ書きます。
そして「ネームサーバ設定変更」ボタンを押します。
あとは書き換えたネームサーバ情報の浸透(反映)を待ちます。
どれくらいで新しいブログにユーザーが切り替わるかという点ですが、私の経験では2日間、正確には48時間足らずで100%切り替わりました。
ご参考:ロリポップからエックスサーバへサーバを移し、DNSの浸透状況を48時間追ってみた。
いかがでしょうか。
もしご参考になれば幸いです。
追伸
引っ越しをして1週間経ちましたが、画像のパスの書き換えに時間をとられ、ようやくSSL化(https化)できました。
いまのところ、安定して稼働しているようです。