WordPress案件の仕事でデモサイトで構築しておいてクライアント様に確認してもらい最終的にクライアント様の契約するレンタルサーバーに独自ドメインを設定して納品するという事がよくあります。
今回はさくらインターネットで構築したデモサイトを独自ドメインを設定したエックスサーバーに引越しする方法をご紹介したいと思います。
目次
WordPressデータを旧さくらサーバーからダウンロードする
現在さくらインターネットサーバーで稼動しているワードプレスデータのすべてをローカル環境にダウンロードします。
旧ワードプレスのバックアップデータを作成する
続いてさくらインターネット側でデータのバックアップ作業を行っていきます。
phpMyAdminにアクセス
コントロールパネルにログインし「データベースの設定」より「管理ツールログイン」をクリックしphpMyAdminにログインします。
phpMyAdminのユーザー名とパスワードを入力しログインします。
phpMyAdminでデータをエクスポート
データベースが複数ある場合は左の一覧よりバックアップするデータベースを選択します。
続いてバックアップするデータベースを選択した状態で【エクスポート】をクリックします。
エクスポート画面で⑤で全選択し、⑥のチェックを入れます。
最後に⑦の「実行する」をクリックする事でエクスポートデータのダウンロードが始まります。
新サイトにてエクスポートデータをリストアする
ここからダウンロードしたワードプレス構成ファイルとダウンロードしたエクスポートデータをエックスサーバーに復元していきます。あらかじめ独自ドメインはエックスサーバーに設定しておいてください。
新エックスサーバーでワードプレス導入準備
ここからエックスサーバーにワードプレスを導入する準備をしていきます。
エックスサーバーのサーバパネルにログイン
https://www.xserver.ne.jp/login_info.phpよりインフォパネル画面からIDとパスワードを入力ししてログインします。
続いてサーバパネルへのログインをクリックしてサーバパネルに入ります。
設定ドメインを変更
サーバパネルよりワードプレスを導入するドメインを「設定対象ドメイン」より選択します。
データベースの追加
続いてワードプレスを導入するためのデータベースを作成します。サーバパネルの「データベース」より「MySQL」をクリックし設定画面を表示させます。
ここで「MySQL」タブをクリックし作りたいデータベース名を入力し、文字コードを「UTF-8」を選択し「MySQLの追加」をクリックして
確認画面より「MySQLデータベースの追加」ボタンをクリックして確定します。
データベースユーザーの追加
続いてデータベースにアクセスするユーザーを追加します。「MySQLユーザ追加」をクリックし、ユーザーIDとパスワードを自設定しユーザーを追加します。
データベースにユーザーを割り当てる
最後にデータベースとユーザーを結びつけます。「MySQL一覧」より作ったデータベースの「アクセス権未所有ユーザー」より先ほど作ったユーザーを選択して【追加】をクリックして割り当てます。
新エックスサーバーでワードプレス構成ファイルをアップロード
構成ファイル「wp-config.php」を編集する
旧さくらインターネットサーバからダウンロードしたワードプレス構成ファイルの中から「wp-config.php」をテキストエディタで開き編集します。
- データベース名
- データベースユーザー名
- データベースのパスワード
- ホスト名
ホスト名はエックスサーバーパネルの「MySQL設定」より確認できます。
構成ファイルのすべてをアップロードする
「wp-config.php」の編集が完了したらワードプレスの構成ファイルをすべて新エックスサーバーのドメインフォルダにアップロードします。
/目的のドメイン.com/public_html/内にアップロード。
新エックスサーバーパネルでバックアップSQLをインポート
新エックスサーバーパネルより「phpmyadmin(MySQL5.5)」をクリックします。認証画面が表示されるので、以下を入力します。
- データベースユーザー名
- データベースパスワード
phpMyAdmin画面で左メニューより新しく追加したデータベース名をクリックして画面を切り替え、「インポート」をクリックします。
インポート画面より旧さくらインターネットphpMyAdminよりバックアップしたSQLデータを読み込みます。
最後に実行をクリックしてください。これでデータベース作成とバックアップデータが新サイトに反映されます。
MySQLのドメインやパスを入れ替える
この段階でバックアップデータは新サイトに反映されていますが、データのドメインやパスはそのままになっています。例えばhttp://localhost/testなどで制作していたとしたら、インポートした状態では画像へのリンクやコンテンツへのリンクはこのローカルのままになっています。
なので、割り当てるドメインに一括で入れ替える作業を行います。
入れ替え専用スクリプトをダウンロード
WordPress Serialized PHP Search Replace Tool よりツールをダウンロードします。
ダウンロードしたZipファイルを解凍すると「Search-Replace-DB-master」になりますが、ワードレス公式サイトにはこのフォルダ名をできるだけ簡単ではないフォルダ名に変更するように推奨されています。
例えば以下のようです。
Search-Replace-DB-master
↓
site-place-move-action
スクリプトをアップロードして書き換え画面にアクセスする
このリネームした「site-place-move-action」をすべてサーバーのルートへアップロードします。
その後http://www.目的のドメイン.com/site-place-move-action へアクセスします。
旧サイトURLと新サイトURLを入れ替える
「Search/replace」より旧サイトURLと新サイトURLをそれぞれ入力し、「actions」の【live run】ボタンをクリックして実行します。
※ここでurlを入力する際に最後の/(スラッシュはないほうが良いです)
必ずスクリプトを削除する
入れ替えが終われば一度新サイトにアクセスしリンク等のURLが変更されているのを確認できれば入れ替えのスクリプトをサーバーから削除するようにしてください。
管理画面にアクセス
管理画面にアクセスするには新サイトのURL/wp-login.phpより旧サイトで利用していたユーザ名とパスワードで管理画面に入室することができます。
あとがき
今回はさくらインターネットのデモサイトからクライアント契約のエックスサーバー本番環境を想定し解説をしてきました。ご紹介させていただきました方法以外にも探せばいろいろとありますが、URL入れ替えがうまくできなかったり、リンクパスがおかしかったりという問題が起こりやすいように思います。
私の場合クライアント様に構成データとSQLデータと手順書を納品データとして渡して先方様にて新サーバーにリストアしていただくこともありますが、だいたい問題なくリストアしていただいていますのでおすすめです。