エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


30分でWordPressを引越し・他のサーバに引越しや開発環境の構築手順

      2017/03/11

WordPressを速いサーバへ引越しをする

 

WordPressが速く動くサーバを求め実験

 
ロリポップのサーバは Googleの Page Speed Insightsでは、サーバのレスポンススピードが遅いと言われてしまいました。
 「サーバーの応答時間を短縮する」
 「お使いのサーバーは 1.8 秒で応答しました。」
 
20150427_wp_01
 
 
そんなわけで、サーバ自体を変えることを想定して、8個のレンタルサーバを対象にこのエス技研ブログをコピーして実際にどれくらいのスピードになるかを実験してみました。
 
その結果は「実測比較・レンタルサーバスピード選手権!WordPressが速いのは?」に記載しています。
 
結論から書くと、ヘテムル、X10、さくらプレミアムあたりがよさそうです。
ただ、月額費用を考えると、ロリポップも悪い選択じゃないということも確認できましたね。
 
 

実験を行うために行ったWordPressの引っ越し作業手順

 
で、この記事では、その実験を行うために必要となった WordPressを他のサーバにコピーをして動かすための手順を解説します。
 
この仕組みを理解できれば、他のサーバに WordPressを本格的に引越しする方法も理解できます。
 
WordPressを他の環境に持っていくのは結構簡単ですよ。
 
【手順】
1.現行サーバにあるファイル一式を取得
2.ファイルの情報を修正
3.新しいサーバにファイルをアップロード
4.データベースをインポート
5.データベースの値を変更
 
 


 
 

1.現行サーバにあるファイル一式を取得

 
まず、サーバにある WordPressのファイルをダウンロードします。
WordPressのファイル一式を取得するには、BackWPupでバックアップファイルを作成する方法がおススメです。
 
BackWPupでのバックアップ方法については、「BackWPupでバックアップ・全体バックアップ具体的設定例」に記事を書いていますので参考にしてください。
 
BackWPupを使わずに、普通に FTPで全ファイルをダウンロードしてきても何の問題もないのですが、BackWPupを使うとデータベースも含めて必要な全ファイルを取得し、zipで圧縮してくれますのでダウンロードしてくる時間が短縮できて便利ですね。
 
また、BackWPupを使わずにバックアップする場合は、データベースのバックアップも行います。
phpMyAdminで全てのテーブルを選択してエクスポートします。
 
 

2.ファイルの情報を修正

 
取得したファイルの中で修正が必要なファイルを修正します。
BackWPupでファイルを取得した場合は、zipファイルを解凍してから修正をします。
 
修正が必要なファイルは「/.htaccess」「/wp-config.php」で、いずれも WordPressが入れてあるルートフォルダにあるファイルです。
 
 
まず、「/.htaccess」を修正します。
 

 
WordPressでは URLを任意に処理できるよう .htaccessには上記のような記述があります。
 
これの 8行目を修正します。
 
修正前
RewriteRule . /index.php [L]
 
修正後
RewriteRule . /blog/index.php [L]
 
上記の例は、修正前は「http://blog.s-giken.net/」の様にドキュメントルートに置いてあった WordPressを「http://s-giken.xsrv.jp/blog/」のようにサブフォルダの中に入れて確認することを想定しています。
移動先もドキュメントルートならばここの修正は必要ありません。
 
 
続けて、「/wp-config.php」を修正します。
私の場合は 22行目~ 33行目でしたが、WordPressのバージョンによっては多少違うかもしれません。
データベースの接続情報が記述してある箇所ですので、新しく設定するサーバの情報に基づいてそれぞれ変更を行います。
ちなみに、バリューサーバの様に MySQLのホスト名が「localhost」の場合もあります。
 

 
 

3.新しいサーバにファイルをアップロード

 
修正を行ったファイルも含め、全てのファイルをサーバにアップロードします。
 
ダウンロードしてくるときは zip圧縮すると早かったのですが、アップロードするときは解凍された状態のファイルをアップロードします。
 
 
この際、画像ファイルなどのファイル名に全角文字が使われている場合は注意が必要です。
WordPressの場合は、「メディア」で気軽に全角文字のファイルをアップロードできてしまいますので、知らず知らずのうちに全角文字のファイルをサーバにアップしている場合があります。
通常の運用では特に問題にならない全角のファイル名も、サーバからダウンロード、アップロードする場合に問題になってきます。
 
WordPressで扱う文字は UTF-8で処理されていますので、同じくファイル名も UTF-8でアップロードする必要があります。
 
アップロードした画像が表示されない場合などは、日本語ファイルの文字コードを確認してみてください。
WinSCPでファイルの文字コードに UTF-8を指定してアップロードする場合は下記のサイトが参考になります。
 http://synclogue-navi.com/winscp-encode
 
 
また、BackWPupでバックアップを行った場合は、フォルダの中にデータベースの情報の SQLファイルなども入っていますのでそれはアップロードしない方が安全です。
 
 

4.データベースをインポート

 
データベースをインポートします。
 
20150427_wp_02
 
データベースのインポートは、おおよそレンタルサーバにはデータベース管理ツール phpMyAdminが用意されていると思いますので、そこからインポートします。
 
BackWPupでファイルを取得した場合は、WordPressのルートフォルダにある「******-***.sql」と言った感じの SQLファイルをインポートします。
 
 

5.データベースの値を変更

 
インポートしたデータベースのレコードを修正します。
情報の変更は phpMyAdminで行います。
 
変更するテーブルは「wp_options」です。
 
修正するのは、「option_name」の項目が「siteurl」「home」および「recently_edited」のレコードの「option_value」に書かれている値です。
 
実際に見てもらえれば分かると思いますが、「siteurl」「home」にはサイトの URLが記載されていて、「recently_edited」にはファイルのパスが書いてあります。これを修正します。
 
「siteurl」「home」の方は新しいサイトの URLを記述すればいいだけですので問題ありません。URLの最後の「/」はないものが標準のようですが、ある、なしはあまり気にしないでよさそうです。
 
「recently_edited」は少し仕様の理解が必要です。
 
 

 
「recently_edited」の項目は具体的には上記のように書かれていて、
i:0;s:60:"/home/s-giken/wp-content/plugins/addquicktag/addquicktag.php";
これで一つのまとまりです。
 
この部分をそれぞれ新しいサーバのものに書き換えていきます。上記の場合は 5ファイルのパスが書かれていますので、それぞれ修正を行います。
 
20150427_wp_03
 
さらに、上記のように
/home/s-giken/wp-content/plugins/addquicktag/addquicktag.php
この部分の情報として「i:0;s:60:」があるわけですが、この一番最後の「s:60:」の部分が文字数を表していますので、ファイルのパスを書き換えた場合は、ダブルクォートで囲まれている部分の文字数が何文字なのかを数えて修正をします。
 
 
ここで解説している手順は、データベースにインポートしてから phpMyAdminによって値を修正する方法を紹介していますが、SQL文のテキストを修正してからインポートしても問題ありません。
 
 
また、プラグインによっては必要なファイルのパスをテーブル「wp_options」に保存している場合もありますので、それを修正する必要があります。
 
テーブル「wp_options」はせいぜい 300~500件程度のレコードですので、上から順番に見ていく、もしくは、phpMyAdminの「検索」機能を使ってパスが書かれている箇所がないかどうかを確認します。
 
例えば、この記事の最初でファイルをダウンロードする際に使用した「BackWPup」ですが、バックアップのログを保存する場所の情報が「backwpup_cfg_logfolder」の項目に記述されています。
 
BackWPupを正常に動作させるためにはここも変更をしておく必要があります。
BackWPupは、単にパスが記述されているだけですが、先ほど説明したように文字数を設定する必要な場合もありますので、状況に合わせて文字数の値も修正しておきましょう。
 
 
これで WordPressの引越しの設定は終了ですので、WordPressをアップロードしたフォルダにアクセスすると無事にアクセスできると思います。
 
 

その他の対応内容

 
WordPressのシステムとしての対応はここまでで終わりなのですが
・各種設定で URLを記述している箇所の修正
・投稿内に URLでリンクを記述している箇所の修正
など、引き続き対応する必要がある箇所があります。
 
例えば、このブログであれば、グローバルメニューの「Home」のリンクは URLを記述しています。
また、投稿記事内で他の記事へのリンクは全て URLでリンクを記述していますので、それを置換する必要があります。
 
後者の投稿内のリンクは、「WordPress投稿テキストを検索・置換するSearch Regexの使い方解説」に記事を書いていますが Search Regexを使って一括置換すると便利でしょう。
 
 

ドメインも含めて引越しをする場合

 
お試しではなく本当に引越しをする場合についても説明しておきます。
 
実際の手順を確認すればわかると思いますが、ドメインが変わらなければ変更するポイントは、データベースの接続とファイルを置く場所のパスの設定だけですので、作業はより簡単になります。
 
基本的な流れは1~5で変わりません。
ですが、2、5で行う設定情報の変更が下記の箇所だけになります。
 
2.ファイルの情報を修正
「.htaccess」の設定変更は必要ありません。
「/wp-config.php」のデータベースの接続情報は、サーバによって変わるところですのでここは変更が必要です。
新しいサーバの設定情報に従って変更をします。
 
 
もう一つは、
5.データベースの値を変更
 
テーブル「wp_options」の変更です。
「siteurl」「home」はそのままで OKで、「recently_edited」の値を新しいサーバのパスに合わせて変更するだけです。
 
 
もっとも、サーバを引越しをして、ドメインが切り替わるまで動作テストをしない、っていうのはなかなかない選択肢なので、一度レンタルサーバのドメインに切り替えて動作検証をしてから、本番 URLに切り替える。っていう流れになるんでしょうね。

 - WordPress

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

カスタムタクソノミーのターム一覧をウィジェットにショートコードで編集

カスタムタクソノミーに属するターム(カテゴリ)の一覧を wp_list_categories()関数+ショートコードでウィジェットに編集するサンプルプログラムです。

WordPressのカテゴリ単位・フォルダ単位でBasic認証を設定する方法

カテゴリ単位でBasic認証を設定する方法の解説。WordPressのカテゴリはフォルダの実態がないですが、実は簡単な方法でプラグインも使わずにBasic認証を設置できます。

BJ Lazy LoadでWordPressを高速化!SEO効果絶大でPVもアップ!

Lazy Load系の処理を使い画像だけでなくiframe等表示スピードに影響があるものを総合的に対策。入れるだけで高速化するので使わない手はない!

BackWPupでバックアップ・Jobの設定・保存する情報の設定

BackWPupその2。Jobのバックアップの基本部分と対象の設定についての解説。

WordPressのカテゴリやタクソノミーにカスタムフィールド項目を追加する方法

WordPressのカテゴリやタクソノミーに編集する項目を追加する方法の解説。Advanced Custom Fieldsを使うと簡単。テンプレートに記述する方法も解説。

WordPress 任意のファイルを読み込むショートコードの処理

投稿ページにショートコードを利用して任意のファイルを読み込む処理の解説です。

XAMPP環境で WP-DBMANAGERでの復元でDBが壊れる

XAMPP環境で WordPressの WP-DBMANAGERを利用して DBの復元をしたら DBが壊れた。

Export to Textで WordPressを csv出力

WordPressのデータを csv出力する Export to Textの使い方を解説しています。

Category Order and Taxonomy Terms Orderでカテゴリ・タクソノミーのタームの順番を並び替える

標準機能では行えないカテゴリやタクソノミーの並び替えを行うプラグインCategory Order and Taxonomy Terms Orderの紹介です。

Rating-Widgetは超簡単設定のWordPress口コミサイト構築プラグイン

口コミの評価点を投稿する機能に特化したプラグインで、多様なイメージの投稿方法や一覧ページ、コメントなどにも投稿機能を追加することができます。