ランキ流

浮き沈みの激しい世の中で流行ったり評価されてるモノを題材にしながらゆるく書いてます

WordPressをロリポップからエックスサーバーに同ドメインで移行した方法

f:id:rankingwatcher:20161009204700p:plain

 

ロリポップで動いているWordPressをエックスサーバーに移したい!

 

個人的に「WordPress」で運用してるサイトがあります。

 

といっても、自動インストール機能を使ってWordPressを導入して、あとはテンプレート(テーマ)を少しいじってくるくらいです。

 

でもそのWordPressはロリポップのサーバーにインストールされていたものでした。スタンダードプランだとわりとサクサク動くようですが、私が使っていたのはライトプラン。

 

WordPressの動きがどうももっさりしてる感もあり、今後のことも考えるとそのままじゃあかんかなぁ、という思いがずっとありました。

 

ということで、エックスサーバーに変えてしまおうと思ったわけです。

 

 

けど、WordPressの移行(移転)なんて一度もやったことがありません。そもそもデータをエクスポートして、新しいWordPressにインポートすればいいだけじゃないの?いや、ぜんぜん違うんですね。あまちゃんでした。後でわかりました。

 

で、ちゃんと調べました。

 

そうするとPHPとかデータベースとかが絡んでくることがわかりました。これは厄介じゃないの?と思ったのですが、いざとなればそのままロリポップでええやん、という半ば開き直りの境地でお引っ越し作業にチャレンジしてみることにしました。

 

WordPressのサーバー移転は方法さえ間違わなければ、それほど難しくない

 

まあ、その気持ちが功を奏したのか、結果は一発合格!

 

いやあ、こういう時ってなにかしらのトラブルがあったりするもんですが、すんなりいっちゃって逆に拍子抜け。ネット上で調べた手順通りに進めたら特に問題ありませんでした。その後はサクサクとエックスサーバーでWordPressは動いてます。

 

これで気を良くしたので、実は別に稼働していたWordPressサイトもいくつかロリポップからエックスサーバーにお引っ越ししちゃいました。一度、コツをつかんでしまえば、後はラクチンですね。

 

というわけで、ロリポップからエックスサーバーにWordPressを移行させたいと思っている人のためにその方法、手順や注意点について記録しておくことにしました。

 

レンタルサーバー移転に伴いWordPressごと移転しなくちゃいけないケースというのもあるかと思います。今回はロリポップ→エックスサーバーという移転のやり方について記録していますが、どのサーバーにおいて大きな流れは変わらないはずです。

 

では、みなさまのご参考になれば幸いです。

 

同ドメインごとロリポップからエックスサーバーにWordPressを移行する方法です。プラグインは使いません。

 

あ、ちなみにWordPressのプラグインを使ってやる方法もあるらしいですが、それは今回試してません。

それと、独自ドメインごと丸ごとお引っ越しするという内容です。つまり同じドメインでそのままエックスサーバーでWordPressが動くようにする、ということです。

 

そうそう、エックスサーバーの契約はあらかじめ済ませておいてくださいね。もちろん契約申し込み後即時利用可能とは思いますが、念のため。

 

なお、私はこの方法で特に問題なく移行できていますが、このやり方を100%保証するものではありませんので責任は負いかねます。ご了承くださいませ。

 

ロリポップからWordPressのデータを丸ごと取り出す(エクスポート)

 

まずはWordPressが設置されているロリポップ側からデータをまるごと取り出しておきます。

 

しかし、これはWordPressに投稿された文章や画像データだけはなく、WordPressのシステムそのもののデータすべてが対象となります。(なので、エックスサーバー側ではWordPressのインストールは不要です)

 

データは大きく分けて2種類あり、

 

  1. データベースからエクスポート(ダウンロード)する
  2. FTPソフトでエクスポート(ダウンロード)する

 

ということになります。

 

ロリポップのデータベースからエクスポートする

 

では、まずはデータベースのお話からです。

 

ロリポップ!のユーザー専用ページ(管理画面)にログインし、「WEBツール」→「データベース」に進みます。

 

f:id:rankingwatcher:20161008183829p:plain

 

このあと「phpMyAdmin」を開いて、データベースからデータを取り出すわけですが、その前にに確認しておくべき3つのデータがあります。

 

f:id:rankingwatcher:20161008194141p:plain

 

  1. サーバー
  2. ユーザー名
  3. パスワード(「パスワード確認」をクリックすると表示されます)

 

以上3項目です。

 

手書きでメモするよりもどこかにコピー&ペーストして使いやすいようにしておくほうが便利です。パスワードについてはコピーができないので、手入力するか、手書きメモするしかないかと思います。

※サーバーはユーザーによって異なりますのでご注意ください

 

それでは、4.「phpMyAdminを開く」をクリックして次に進みましょう。

 

f:id:rankingwatcher:20161008195110p:plain

このようなログイン画面になりますので、さきほど取得した

 

  1. サーバー
  2. ユーザー名
  3. パスワード

 

を選択または入力(コピペでOK)して、最後に4.「実行」をクリックします。

※サーバーはユーザーによって異なりますのでご注意ください

 

選択ミスや入力ミスがなければphpMyAdminに入ることができるはずです。

 

phpMyAdminでエクスポートする方法

 

では、その後の手順を解説していきます。

 

f:id:rankingwatcher:20161008222336p:plain

 

左サイドにある該当のデータベース名をクリックします。すると、これから引っ越しをしようとしているWordPress内のデータベースフォルダがずらっと表示されます。「wp」が頭についてるフォルダになっていればOKです。「wp」は「WordPress」用のデータであることを示しています。

 

次に、上部メニューから「エクスポート」をクリックします。

 

「エクスポート方法」は、はじめ「簡易」になっていますが「詳細」にチェックマークをつけ直します。

 

そして、「出力」の「圧縮」は「なし」になっているかと思いますが「zip形式」に変更します。それ以外の形式でも大丈夫のようですが、一番なじみのある「zip形式」が混乱なく進めていけるのではないでしょうか。

 

以上、まとめると

 

  1. 該当データベース名を選択
  2. 「エクスポート」メニューをクリック
  3. 「エクスポート方法」は「詳細」を選択
  4. 「出力」の「圧縮」は「zip方式」を選択

 

ということになります。

 

その後、下にスクロールしていって

 

f:id:rankingwatcher:20161008223255p:plain

 

「生成オプション」の「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT コマンドを追加する」にチェックマークをつけます。

 

f:id:rankingwatcher:20161008223428p:plain

最後に「実行」ボタンをクリックします。

すると、ファイルをダウンロードできるようになりますので、指定フォルダにダウンロードします。

これでロリポップ側のデータベースからのエクスポートは完了です。

 

FTPソフトを使ってロリポップ側の全データをダウンロードする

 

続いて、FTPソフトを使って、ロリポップサーバーから全データをエクスポートします。

 

 私は「NextFTP4」というFTPソフトを使っています。

 

f:id:rankingwatcher:20161008230248p:plain

 

FTPソフトは現在お使いもので問題ないかと思います。

 

これによって、ロリポップのサーバー側にあるWordPressのフォルダ、ファイルすべてを任意のフォルダにダウンロードすることになります。これにはテーマやプラグインといったファイルすべてが含まれています。

 

記事数やテーマ、プラグイン等のボリュームによって、ダウンロードにかかる時間は多くなるかもしれません。

 

ここまで、慣れない人にとってはハードル高そうに思えるかもしれませんが、手順通りにやれば案外かんたんです。

 

さあ、これでロリポップ側から、WordPressの全データを取り出す作業は完了です。

 

ここからエックスサーバー側の作業です

 

エックスサーバーにドメインの設定をする

 

エックスサーバー側では、まずは独自ドメインの設定を済ませておきましょう。

 

f:id:rankingwatcher:20161008231957p:plain

 

f:id:rankingwatcher:20161008231333p:plain

 

エックスサーバーサーバーパネルの「ドメイン設定」から「ドメインの追加設定」で、移転対象となる独自ドメインを追加しておきます。

 

まだこの時点では追加設定をしているだけですのでご心配なく。

ネームサーバーを変更するまでは、ロリポップのWordPressが表示されていますので、問題ありません。ですので、焦らずに落ち着いて作業しましょう。

 

エックスサーバーでデータベースの設定をおこなう

 

 続いて、エックスサーバー側のデータベースの設定にうつります。

 

MySQL(データベース)の追加

 

まずはデータベースを作ります。

 

f:id:rankingwatcher:20161009133124p:plain

 

エックスサーバーのサーバーパネルから「データベース」→「MySQL設定」をクリックします。

 

f:id:rankingwatcher:20161009135524p:plain

 

MySQL設定ページへ進みますので、上部タブより「MySQL追加」をクリックすると、このような画面になります。

 

「MySQLデータベース名」にご自身で決められた任意のデータベース名(半角16文字以内)を入力します。文字コードはUTF-8のままで大丈夫。

 

最後に「MySQLの追加(確認)」をクリックします。

 

f:id:rankingwatcher:20161009135927p:plain

すると「MySQLデータベースを追加しますか?」という確認画面が出てきますので「MySQLデータベースの追加(確定)」ボタンをクリックします。これで完了です。

 

MySQLユーザの追加

 

続いてMySQLユーザの追加に進みます。

 

f:id:rankingwatcher:20161009140656p:plain

 

上部タブから「MySQLユーザ追加」をクリックすると、このような画面になります。

 

任意のユーザ名(半角9文字以内)と任意パスワードを決めて、サイドに「MySQLユーザの追加(確認)」をクリックします。

 

f:id:rankingwatcher:20161009140938p:plain

 

さきほどと同じように確認画面が出てきますので、「MySQLユーザの追加(確定)」をクリックすれば、ユーザ追加の完了となります。

 

作成したユーザにアクセス権を与える

 

つづいて、このユーザにさきほど作成したデータベースへのアクセス権を与えます。

 

f:id:rankingwatcher:20161009142132p:plain

 

上部タブから「MySQL一覧」を選びます。すると、作成済みのデータベースが表示されます。

 

私の場合は、すでにいくつかのデータベースが存在していたのでこのような画面になってます。エックスサーバーを契約したばかりで何もしていない人の場合は、さきほど作成したばかりのデータベースだけしかないはずです。

 

で、さきほど作成したデータベースの箇所をよく確認して、「アクセス権未所有ユーザ」のプルダウンメニューから、さきほど作成したMySQLユーザ名を選択します。

 

f:id:rankingwatcher:20161009142635p:plain

 

そして「追加」ボタンをクリックします。

 

f:id:rankingwatcher:20161009142839p:plain

 

そうすると「アクセス権所有ユーザ」のところにさきほど追加したユーザ名が表示されているはずです。

 

f:id:rankingwatcher:20161009143814p:plain

 

最後に、この「MySQL一覧」ページを下にスクロールして、「MySQL5.5情報」にある「MySQL5.5ホスト名」をメモまたはどこかにコピーしておきましょう。

 

メモしておくべき4つの重要なデータ

 

また、このホスト名も含めて、つぎの4つのデータが今後必要になりますので、同じようにメモ帳等にコピーする等して、すぐに参照できるようにしておきましょう。

 

  1. MySQLホスト名
  2. MySQLデータベース名
  3. MySQLデータベースユーザ名
  4. パスワード

 

2~4については、さきほど設定したものです。

 

ロリポップからエクスポートしたファイルをエックスサーバーにインポートする

 

つづいて、ロリポップサーバーからエクスポートしたデータベースファイルを、エックスサーバーのデータベースにインポートしましょう。

 

f:id:rankingwatcher:20161009144629p:plain

 

左メニューの「データベース」→「phpmyadmin(MySQL5.x)」をクリックします。

※サーバーパネルのトップに戻ってしまっている場合は、左メニューは存在しませんが、同メニューはすぐに見つけられます。MySQLのバージョンは人によって異なると思います。

 

f:id:rankingwatcher:20161009145347p:plain

 

認証画面となりますので、さきほどのデータベースユーザ名とパスワードを、入力またはコピー&ペーストして、ログインします。

 

これで「phpmyadmin」に入ることができます。

 

f:id:rankingwatcher:20161009151420p:plain

 

  1. 左メニューの中にさきほど作成したデータベース名が表示されているはずですので、それを選択します。
  2. 上部タブの「インポート」をクリックします。
  3. 「インポートするファイル」の「アップロードファイル」にチェックマークをします。
  4. 「ファイルを選択」をクリックし、ロリポップからエクスポートしたデータベースファイル<zip形式ファイル>を指定します。
  5. 「実行」ボタンをクリック

 

以上の手順となります。

 

「ファイルの文字セット」は「utf-8」のままでかまいませんし、それ以外の項目も変更の必要はありません。

 

f:id:rankingwatcher:20161009151755p:plain

 

「実行」後に「インポートは正常に終了しました。●●個のクエリを実行しました。(インポートファイル名)」と表示され、左メニューにインポートされたデータベースフォルダも表示されていれば、無事インポート完了となります。

 

これでサーバーパネルからMySQLデータベースの設定はすべて完了です。

 

FTPソフトでエックスサーバー側にアップロードする

 

それでは、ロリポップサーバーからダウンロードしたWordPressファイルすべてをエックスサーバー側にアップロードしましょう。

 

まずはFTPソフトで、エックスサーバーに接続できるように設定をやっておいてください。

 

それでは一度、接続してみましょう。

 

エックスサーバーでは独自ドメインを追加設定すると、自動的に3つのファイルが生成されています。

 

f:id:rankingwatcher:20161009153107p:plain

 

  1. 「.htaccess」
  2. 「default_page.png」
  3. 「index.html」

 

この3つのファイルは、不要ですので削除します。つまり、この結果エックスサーバー側は「からっぽ」になります。

 

アップロードする前に、中身を書き換えるべき2つのファイル

 

で、ロリポップからダウンロードしたファイルをアップロードする前に、中身を書き換えておくファイルがふたつだけあります。

 

このふたつです。

 

  1. 「.htaccess」
  2. 「wp-config.php」

 

「.htaccess」の書き換え方

 

まずは「.htaccess」から、確認しましょう。

 

ロリポップからダウンロードした「.htaccess」の中身はこんなかんじになっているはずです。

 

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

# BEGIN Lolipop [ http://lolipop.jp/manual/blog/wp-htaccess/ ]
<Files wp-login.php>
ErrorDocument 403 /lolipop_service_documents/wp-login-deny.html
Order allow,deny
Allow from all
</Files>

# END Lolipop

 

 人によっては内容を少し変更している場合もあるかと思いますが、とにかくロリポップ側にアップロードされていた「.htaccess」ファイルをそのままエックスサーバーにアップロードしてしまうと、データベースがうまく動きません。

 

ですので、中身をこのように変えます。

<サーバーID><ドメイン名>だけはそれぞれ3箇所、変更してください。<サーバーID>はエックスサーバーサーバーパネルの左メニュー最上部「アカウントデータ」の部分に記載されています。

 

suPHP_ConfigPath /home/<サーバーID>/<ドメイン名>/xserver_php/
AddHandler fcgid-script .php .phps
FCGIWrapper "/home/<サーバーID>/<ドメイン名>/xserver_php/php-cgi" .php
FCGIWrapper "/home/<サーバーID>/<ドメイン名>/xserver_php/php-cgi" .phps

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

 

これで「.htaccess」はOKです。

 

「wp-config.php」の書き換え方

 

つぎに「wp-config.php」です。変更するのは4箇所。変更箇所は22行目以降あたりに見つかれるはずです。

 

// ** MySQL 設定 - こちらの情報はホスティング先から入手してください。 ** //
/** WordPress のデータベース名 */
define('DB_NAME', '<MySQLデータベース名>');

/** MySQL のユーザー名 */
define('DB_USER', '<MySQLユーザ名>');

/** MySQL のパスワード */
define('DB_PASSWORD', '<パスワード>');

/** MySQL のホスト名 (ほとんどの場合変更する必要はありません。) */
define('DB_HOST', '<MySQLホスト名>');

/** データベーステーブルのキャラクターセット (ほとんどの場合変更する必要はありません。) */
define('DB_CHARSET', 'utf8');

/** データベースの照合順序 (ほとんどの場合変更する必要はありません。) */
define('DB_COLLATE', '');

 

  1. <MySQLデータベース名>
  2. <MySQLユーザ名>
  3. <パスワード>
  4. <MySQLホスト名>

この4つの部分です。

 

1~3は、さきほどエックスサーバーのサーバーパネルから作成・設定したもの。4の<MySQLホスト名>は、さきほどサーバーパネルの「MySQL一覧」ページから確認したものです。

 

これで「wp-config.php」ファイルの修正もOKです。

 

※対象のWordPressがルートディレクトリではなく特定のディレクトリに格納されていた場合は「index.php」も書き換える必要が出てきます。この件につきましては当記事では割愛いたします。

 

エックスサーバー側に全ファイルをアップロードする

 

さあ、これでエックスサーバーに全ファイルをアップロードしましょう。

 

f:id:rankingwatcher:20161009162010p:plain

 

これで、準備万端です。

 

ネームサーバーをエックスサーバーに変更する

 

残る手順としては、ネームサーバーを変更するという作業だけです。

 

まあ、万が一、うまくいかなかった場合は、ネームサーバーをロリポップ側に戻せばいいだけです。

 

ネームサーバーが切り替わって反映されるまでに少し時間はかかるかもしれませんが、いざとなればロリポップ側に戻すことができますので、思い切ってやってみましょう。

 

ちなみに私は、ドメインを「ムームードメイン」で管理していたので、そこでネームサーバーの変更手続きをおこないました。

 

f:id:rankingwatcher:20161009194827p:plain

 

 ムームードメインのコントロールパネルにログインし、「ドメイン操作」から「ネームサーバ設定変更」を選びます。

 

該当ドメインは「ロリポップ!レンタルサーバー」のところにチェックがあると思いますので、「GMOペパボ以外のネームサーバを使用する」にチェックします。

 

f:id:rankingwatcher:20161009195114p:plain

 

ネームサーバーの設定内容

 

設定内容は、

 

  • ネームサーバ1:ns1.xserver.jp
  • ネームサーバ2:ns2.xserver.jp
  • ネームサーバ3:ns3.xserver.jp
  • ネームサーバ4:ns4.xserver.jp
  • ネームサーバ5:ns5.xserver.jp

 

以上のとおりです。

 

最後に「ネームサーバー設定変更」ボタンをクリックすれば終了です。

 

ムームードメインではないサービスでドメインを管理している場合も基本は同じです。ネームサーバーの変更はメニュー内ですぐ見つかるはずです。不明な場合は、サポートに問い合わせみましょう。

 

同じドメイン(URL)にアクセスして、サイトやブログが無事表示されるか確認する

 

さあ、あとは待つだけ。

 

表向きは、数時間~24時間なんて書かれていますが、1時間程度で反映されるんじゃないでしょうか。

 

該当のドメイン(URL)にアクセスして、以前と同じようにWordPressが動いているようでしたらOKです。

 

念のため、WordPress管理画面へのアクセスも確認しておいてください。IDやパスワードも以前と同じままでログインできるはずです。

 

これまでに投稿された記事やページも確認できますか?

新しく記事を投稿できますか?

 

それなら、多分問題ないはずです。

Congratulations!

 

ロリポップの解約はちょっと待って!

 

でも、これですぐにロリポップ側からファイルをすべて削除したり、ロリポップを解約するのは少し待ってください。

 

エックスサーバーに移したWordPressに不具合が見つかってどうしようもない場合は、ネームサーバーをロリポップ側に戻すという方法がありますので。

 

これで以前の環境に復元することが可能になります。

 

その場合、エックスサーバー側に移行した後に投稿した記事は、再度ロリポップ側に戻した後にも投稿する必要があります。でも、それくらいの手間で済めばたいしたことありません。

 

なので、1ヶ月から2ヶ月程度は、そのままロリポップの契約を延長しておいたほうがいいかもしれません。ライトプランであれば、月額300円(半年払い以上なら250円換算)。

 

保険料と思えば安いものです。

 

まとめ

 

というわけで、まとめです。

 

WordPressをロリポップからエックスサーバーに同ドメインで移行する方法を書いてきましたが、その手順をここに整理しておきます。

 

ロリポップ側でおこなうべき作業

  • phpMyAdminでデータベースファイルをエクスポートする
  • FTPソフトでサーバー側から全ファイルをダウンロードする

 

エックスサーバー側でおこなうべき作業

  • エックスサーバーを契約する
  • 対象ドメインを設定する
  • データベースの設定をおこなう
  • phpMyAdminでデータベースファイルをインポートする
  • 「.htaccess」と「wp-config.php」の中身を書き換える
  • FTPソフトで全ファイルをアップロードする

 

仕上げにおこなう作業

  • ネームサーバーを変更する
  • ドメインにアクセスしWordPressが正常に動いているか確認する

 

前述しましたが、私はこの方法で特に問題なく移行できたとはいえ、このやり方を100%保証するものではありませんので責任は負いかねます。申し訳ありませんが、ご了承くださいませ。

 

当記事の内容に問題や修正箇所があるようでしたら、教えていただければ幸いです。確認の上、修正させていただきます。