WordPressブログをヘテムルからエックスサーバーに移転した
長年サーバはヘテムルを利用し続けてきましたが、今回始めて「エックスサーバー」を使ってみることにしました。
エックスサーバーの利用は生まれて初めてだったので、WordPressサイトを移転する際の手順を書き記しておきます。
目次
移転元(ヘテムル)での手順
WordPressのファイルをダウンロードする
まずはFTPクライアントソフトを使用して、ヘテムルサーバー内にあるWordPressのファイルを全てローカルにダウンロードします。
ボクは「Yummy FTP Pro」というソフトを使用しています。
phpMyAdminからデータベースをエクスポート
ヘテムルのコントロールパネルにログイン後、右メニューの「データベース」を選択します。
エクスポートしたいデータベースの「phpMyAdmin」ボタンをクリックします。
phpMyAdminにログインします。ログイン情報は最初にダウンロードしたWordPressファイルの中の「wp-config.php」に記載してあります。
上部のメニューから「エクスポート」を選択し、「エクスポート方法」の「詳細」を選択します。
下に進んで、「生成オプション」内の「CREATE DATABASE / USE コマンドを追加する」と「DROP TABLE / VIEW PROCEDURE / FUNCTION / EVENT コマンドを追加する」にチェックをつけます。
最下部の「実行」ボタンをクリックしてエクスポートを開始します。
エックスサーバーでの移転作業
ドメインの追加設定
サーバパネルの「ドメイン設定」で独自ドメインを追加します。
「ドメインの追加設定」タブを選択し、使用したいドメインを入力したら「ドメインの追加」ボタンをクリックします。
データベースの作成
サーバパネルのデータベース「MySQL設定」より「MySQL追加」タブを選択し、必要な情報を入力します。
MySQLデータベース名は「サーバーID_任意の文字列」となります。
文字コードは「UTF-8」でOKです。
先程作成したデータベースにアクセスするためのユーザーを作成します。
MySQLユーザーID(サーバーID_任意の文字列)とパスワードを入力して、「MySQLユーザの追加」ボタンをクリックします。
「MySQLの一覧」タブを選択し、作成したデータベースにアクセス権を追加します。
「アクセス権未所有ユーザ」から、先程追加したMySQLユーザーを選択し、「追加」ボタンをクリックします。
wp-config.phpの書き換え
ローカルにダウンロードしたWordPressファイルの中の「wp-config.php」のMySQL設定を、先程作成したデータベースの情報に書き換えます。
/** WordPress のためのデータベース名 */
define('DB_NAME', 'データベース名');
/** MySQL データベースのユーザー名 */
define('DB_USER', 'ユーザー名');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'パスワード');
/** MySQL のホスト名 */
define('DB_HOST', 'mysql◯◯.xserver.jp');
WordPressファイルをアップロード
ローカルにダウンロードしたWordPressファイルを全てエックスサーバーの「public_html」内にアップロードします。
データベースのインポート
ヘテムルのphpMyAdminでエクスポートしたSQLファイルを、新しく作成したデータベースにインポートします。
エクスポートしたSQLファイルをテキストエディタで開き、最初の方に記載されているデータベース名を新しいデータベース名に書き換えて保存します。
サーバパネルのデータベース「phpmyadmin(MySQL5.7)」をクリックし、「アクセス権所有ユーザ」のユーザーIDとパスワードを入力し、phpMyAdminにログインします。
ログイン後、作成したデータベースを選択し、「インポート」をクリックします。
「インポートするファイル」内の「アップロードファイル」の「ファイルを選択」をクリックし、移転元のサーバでエクスポートしたSQLファイルを選択し、「実行」ボタンをクリックします。
DNS(ネームサーバ)の切り替え
独自ドメインは「ムームードメイン」で契約してます。
ドメインを移転先のエックスサーバーで利用したいので、DNS(ネームサーバ)の切り替えをおこないます。
ムームードメインにログイン後、左メニューの「ドメイン操作」内にある「ネームサーバ設定変更」をクリックします。
ネームサーバ設定を変更したいドメインの「ネームサーバ設定変更」ボタンをクリックします。
「取得したドメインで使用する ※上級者向け」を選択、ネームサーバ1〜5に「ns1.xserver.jp」〜「ns5.xserver.jp」を入力し、「ネームサーバ設定変更」ボタンをクリックします。
あとは反映されるまで数時間〜数日待ちます。
数時間後反映されて、ブログのトップページが表示されましたが、トップページ以外のページが404エラーになってしまってました。
この場合は、WordPressの管理画面にログインし、「パーマリンク設定」を開き、何も変更せずに一番下の「変更を更新」ボタンをクリックすれば他のページも表示されるようになります。
500 Internal Server Errorになった
このブログではなく、別で運営しているWordPressサイトを同じ手順で移行してみたところ、500エラーになってました。
エラーログを確認したところ、「SiteGuard WP Plugin」というWordPressのセキュリティ対策プラグインが原因だったようなので、このプラグインを削除しました。
「.htaccess」ファイルを開き、「#SITEGUARD_PLUGIN_SETTINGS_START」から「#SITEGUARD_PLUGIN_SETTINGS_END」までの記述を削除。
その下に書かれている「SiteGuard_User_ExcludeSig xss-onX-8」を削除。
FTPから「SiteGuard WP Plugin」プラグインを削除。
これで、無事解決しました。
おわり
以上でエックスサーバーへの移行が完了しました。
以前から、Googleが常時SSL化(HTTPS)を推奨していると聞いておりましたので、ブログを始める時はSSL化してみようと思っていたんですけど、ヘテムルは独自SSLが年額18,000円もするんですよね。
ブログで使用するにはちょっと高いなぁ、と思って調べたところ、エックスサーバーでは「Let’s Encrypt」という無料のSSL証明書が使えるそうなので、エックスサーバーに移転することを決めました。
近日中にこのブログを常時SSL化してみようと思います。
SSL化しました