サーバの速度、オプションなどのサービス面、その他いろいろな要因で WordPressのサイトを他サーバへ移行を考えることがあるかもしれません。
当サイトもサーバの応答速度が改善できないことから、サーバ移転を考えました。
WordPress のサイトを移行する手順を、お名前.comから Xserverへの WordPressサイト移行を例に見てゆきたいと思います。他のサーバ間であっても移行の手順は同じです。
今回説明するサーバの環境などは下記になります。
- 旧サーバ : お名前.com
- 新サーバ : Xserver
ドメインはお名前.comでユーザ管理のものを使用し、移行先も同じドメインでの移行になります。また、移行完了まではお名前.comのサーバは並行して契約しておきます。
サイト移行作業の大きな流れは、
- Xserver のレンタル
- Xserver での基本設定
- お名前.comのサイトからデータをダウンロード
- Xserver にデータをアップロード
- Xserver での動作確認
- サイトの切替え
となります。
それでは、実際の移行作業を見て行きましょう。
Xserver サーバをレンタルする
まずは、移行先になる新しいサーバをレンタルしましょう。
各社のレンタルサーバは本契約前に試用期間があるので、実際にサーバを使ってみてから移行するか否かを決められます。
Xserver は、Wordpressの高速サーバとして、とても評判が良いサーバです。
エックスサーバーについて詳しくは、http://www.xserver.ne.jp/
Xserver サーバパネルで設定を行う
Xserver サーバでドメインを追加する
Xserver のサーバパネルから「ドメイン」→「ドメイン設定」で、移行するドメインを追加します。ここでドメインを追加してもサーバ上にホルダーが作成されるだけで、現在稼働しているドメインには影響はありません。
ドメインを追加するとレンタルサーバ上にドメイン名のホルダーが作成されます。
Xserver サーバで MySQLのデータベースを作成する
Xserver のサーバパネルから「データベース」→「MySQL設定」で、移行するデータベースを作成します。
ここで作成するのはデータベースの器のみです。
データベースの作成は、お名前.comのデータベースと合わせる必要はありません。
FTPソフトを使ってサーバに接続する
サーバ移行を簡単に行うためには、FileZilla ClientなどのFTPソフトを使う必要があります。
FTPソフトを使えば、サーバ上のファイルを書き換える、アップロードする、ダウンロードするなどの操作が行えます。
FTPソフトでは、FileZilla Clientが一般的で使いやすいと思います。
FTPソフトをパソコンにインストールしてサーバに接続しましょう。
FTPソフトの接続設定は、サーバパネルの「FTP」→「FTPアカウント設定」ー「FTPソフトの設定」で確認できます。
移行する際には、旧サーバと新サーバの両方に接続できるようにFTPソフトを設定しておきましょう。
WordPress のデータを移行する
お名前.comでの作業
WordPressのデータをダウンロードする
お名前.comから WordPressのデータをFTPソフトを使ってダウンロードします。
ダウンロードするデータは、ドメイン名が付いているホルダー配下のファイルすべてです。
ダウンロード先は、パソコンのローカルディレクトリーです。
MySQL データのエクスポート
phpMyAdminはPHPで実装されたMySQLの管理ツールです。MySQLのデータベースやテーブルの操作などをSQL文を作成することなくブラウザから行えます。
お名前.comからMySQL のデータを移行するには、phpmyadminを使う必要がありますが、お名前.comではphpMyAdminが標準で使えないので、その環境を作る必要があります。
phpMyAdminを使って移行するデータベースの内容をエクスポートしてパソコンに保存します。
phpMyAdminのインストール
phpMyAdminはPHPを使って記述されたスクリプトです、ダウンロードしたファイルをお名前.comのサイトのドメイン名が付いているホルダー配下にFTPでアップロードすることにより、ブラウザ経由でアクセスできるようになります。
phpMyAdminは、下記のサイトからダウンロードできます。
ダウンロードしたファイルは圧縮ファイルとなっていますので解凍して下さい。
Xserver サーバでの作業
WordPressのデータをアップロードする
Xserver サーバへ WordPressのデータをFTPソフトを使ってアップロードします。
Xserver サーバ上にあるドメイン名のホルダーの下のpublic_htmlホルダーを開きます。
ドメインを作成すると、index.htmlとdefault_page.pngが自動的に作成されていますが、この2つのファイルはWordpress の環境には不要なので削除してください。
FTPソフトを使って、お名前.comからダウンロードしたファイルすべてをXserver サーバの「ドメイン名」→「public_html」にアップロードします。
wp_config.phpを編集する
次にXserver サーバへアップロードした WordPressデータの wp_config.phpを編集します。
wp_config.phpは「ドメイン名ホルダー」→「wpホルダー」の下にあります。
wp_config.phpの下記5カ所をXserver サーバパネル→MySQL設定の内容に書き換えます。
ファイルを書き換える場合は、一度パソコンにダウンロードしてからファイルを修正し、変更後にサーバへアップロードします。ファイルを変更する際には必ず変更前のファイルをバックアップしておきましょう。
// ** MySQL settings – You can get this info from your web host ** // /** The name of the database for WordPress */ //Added by WP-Cache Manager define( ‘WPCACHEHOME’, ‘/ドメイン名/wp-content/plugins/wp-super-cache/’ ); //Added by WP-Cache Manager define(‘DB_NAME’, ‘Xserverで作成したデータベース名‘);/** MySQL database username */ define(‘DB_USER’, ‘Xserverで作成したDBユーザ名‘);/** MySQL database password */ define(‘DB_PASSWORD’, ‘Xserverで作成したデータベースのパスワード‘);/** MySQL hostname */ define(‘DB_HOST’, ‘Xserverで作成したデータベースホスト名‘); |
ここまでで、 Xserver上にWordpressのファイルとデータベースの器が作成できました。
MySQL データのインポート
お名前.comのサーバからエクスポートしたデータベースを Xserverのデータベースの器にインポートします。
Xserverでは、phpMyAdminが標準で提供されているので、「サーバパネル」→「phpMyAdmin」で簡単に起動できます。
phpMyAdminを使ってお名前.comからエクスポートしたデータベースをインポートします。
動作確認 URL設定で Xserverサーバ上での動作確認
動作確認 URLでは、他社のサーバで管理されているドメインを、Xserver サーバーに移転(ネームサーバーの切替)する前にサイト内容を確認できる動作確認URLの発行を行うことができます。
動作確認 URLは、Xserver のサーバパネルから設定できます。
Xserver サーバでメールアドレスの登録を行う
動作確認で問題が無ければ、Wordpressサイト自体の移行は完了です。
しかし、このままではインターネットから接続されるWordpressサイトは、お名前.comのサイトになるので、接続先をXserver に設定する必要があります。
接続先をXserver のサイトに変更する前に、お名前.comのサイトで使っていたメールアドレスをXserver で設定しておかないとメールを受け取ることができなくなってしまいます。
Xserver のサーバパネルからメールアドレスの追加で、お名前.comのサイトで使っていたメールアドレスと同じものを追加してください。
ネームサーバの切換え
メールアドレスの追加が終われば必要な環境設定が終了です。
お名前.comのサイトからXserver に移行したサイトへの切替え作業を行います。
インターネットから接続をお名前.comサーバからXserver へ切替えるには、ドメインのネームサーバ(DNS)を新サーバへ切替える必要があります。
サーバの切替えは、契約しているドメインの管理画面から、ネームサーバをXserver 指定のものに置き換えるだけで完了です。
ネームサーバの切替えが反映されるまで最大72時間程度かかります。
移行後の動作確認
移行が終わりDNSサーバの切替が終わったら、サイトにアクセスしてみましょう。
もし、「反映待ちの状態です」と表示されたなら、少し時間を空けてからアクセスしましょう。その際、ブラウザのキャッシュが残っている場合があるので、ブラウザのキャッシュをクリアして接続しましょう。
WordPress が正常に動いたら、ほぼ移行は完了です。
最後にプラグインを確認します。もし、以前に削除したプラグインが表示されている場合は削除しておきましょう。また、必要なプラグインでエラーが表示されている場合は、一度、そのプラグインを削除し、改めてインストールしましょう。
移行の効果を確かめる
などのツールを使って、移行後のサイトの状態を見てみましょう。
WordPressをチューニングする
Xserver では、mod_pagespeed設定が容易されています。
この設定をONにすることで、W3 total catshと同様の効果が得られます。
mod_pagespeedは、W3 total catshとほぼ同じ内容なので併用はしないほうが良いでしょう。
また、その他のプラグインを使わずチューニングを行うには、.htaccessを編集して下記を追記します。この際、.htaccessにもとから設定されている内容は削除してはいけません。
# ETags(Configure entity tags) を無視する設定 <ifModule mod_headers.c> Header unset ETag </ifModule> FileETag None# Enable Keep-Alive を設定 <IfModule mod_headers.c> Header set Connection keep-alive </IfModule># MIME Type 追加 <IfModule mime_module> AddType text/cache-manifest .appcache AddType image/x-icon .ico AddType image/svg+xml .svg AddType application/x-font-ttf .ttf AddType application/x-font-woff .woff AddType application/x-font-woff2 .woff2 AddType application/x-font-opentype .otf AddType application/vnd.ms-fontobject .eot </IfModule># プロクシキャッシュの設定(画像とフォントをキャッシュ) <IfModule mod_headers.c> <FilesMatch “\.(ico|jpe?g|png|gif|svg|swf|pdf|ttf|woff|woff2|otf|eot)$”> Header set Cache-Control “max-age=604800, public” </FilesMatch> # プロキシサーバーが間違ったコンテンツを配布しないようにする Header append Vary Accept-Encoding env=!dont-vary </IfModule># ブラウザキャッシュの設定 <IfModule mod_headers.c> <ifModule mod_expires.c> ExpiresActive On# キャッシュ初期化(1秒に設定) ExpiresDefault “access plus 1 seconds”# MIME Type ごとの設定 ExpiresByType text/css “access plus 1 weeks” ExpiresByType text/js “access plus 1 weeks” ExpiresByType text/javascript “access plus 1 weeks” ExpiresByType image/gif “access plus 1 weeks” ExpiresByType image/jpeg “access plus 1 weeks” ExpiresByType image/png “access plus 1 weeks” ExpiresByType image/svg+xml “access plus 1 year” ExpiresByType application/pdf “access plus 1 weeks” ExpiresByType application/javascript “access plus 1 weeks” ExpiresByType application/x-javascript “access plus 1 weeks” ExpiresByType application/x-shockwave-flash “access plus 1 weeks” ExpiresByType application/x-font-ttf “access plus 1 year” ExpiresByType application/x-font-woff “access plus 1 year” ExpiresByType application/x-font-woff2 “access plus 1 year” ExpiresByType application/x-font-opentype “access plus 1 year” ExpiresByType application/vnd.ms-fontobject “access plus 1 year” </IfModule> </IfModule># Gzip圧縮の設定 <IfModule mod_deflate.c> SetOutputFilter DEFLATE# 古いブラウザでは無効 BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch \bMSIE\s(7|8) !no-gzip !gzip-only-text/html# 画像など圧縮済みのコンテンツは再圧縮しない SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|ico|eot|woff|woff2)$ no-gzip dont-varyAddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/js AddOutputFilterByType DEFLATE image/svg+xml AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/atom_xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript AddOutputFilterByType DEFLATE application/x-httpd-php AddOutputFilterByType DEFLATE application/x-font-ttf AddOutputFilterByType DEFLATE application/x-font-opentype </IfModule> |
以上で移行作業が完了です。
もし、問題が発生した場合は、ドメインのDNS設定を元に戻すことで、旧サーバ接続に戻すことができます。新サーバで問題が無いようであれば、時期を見て旧サーバを解約しましょう。