コアサーバーからエックスサーバーに移転(SSL事前設定)
先日、あるホームページをコアサーバーからエックスサーバーにサーバ移転しました。
エックスサーバーではサーバー移転前に事前にSSLの設定が可能です。事前にSSL設定ができるので、https化されたサイトでも一時的なエラーを出さずにサーバー移転することができます。
その設定手順についての覚書です。
目次
エックスサーバーでサイトを追加する
まずはサーバー移転先のエックスサーバーにてドメインを追加してサイトのデータをアップします。今回はWordPressサイトですのでエックスサーバーにある「WordPress簡単移行」機能を使いました。

WordPress移転情報入力の部分で
「移行元URL」
「移行元WordPressユーザー」
「移行元WordPressのパスワード」
と移行先URLを入力してWordPressを移行します。


実際、WordPress移行を実行してみると、画面には移行状況のステータスが表示されるのですが、ステータスが「待機中」のまま。。。

10分以上もそのままだったので、一度リロードしてみました。すると、

移行処理は完了していますが、SSL証明書の発行に失敗しています。
ドメインのネームサーバーを変更したのち、「SSL設定」より個別にSSL証明書を発行してください。
というエラーメッセージ。
ファイルマネージャーやphpMyAdminでデータを確認してみたところデータはちゃんと移行されているようでしたので、SSL設定に進むことにします。
エックスサーバーで無料SSL設定
エックスサーバーのサーバーパネルからドメイン>SSL設定で行います。
「独自SSL設定追加」でドメインを入れると以下のようなメッセージ

www.domain.comのDNS参照先サーバーが当サーバーではありませんでした。
これはまだネームサーバーをエックスサーバーのものに変えていないため。
ネームサーバーを変更する以外には、Web認証とDNS認証のどちらかを選択します。
まずは比較的手軽にできるWeb認証でやってみました。
「外部サーバーでのWeb認証」を選択
「外部サーバーでのWeb認証」を選択すると、トークンファイルというものが表示されるのでそれをダウンロードし、指定された通りのURLでアクセスできるように移行元サーバーに設置します。

でも今回は設置してみましたがブラウザからアクセスしてみても「Not Found」で404エラーになってしまい、Web認証はできませんでした。エックスサーバー側でも
「トークン設置URLにアクセスできませんでした。」
となっています。
外部ネームサーバーでDNS認証をする
Web認証がうまくいかなかったので、DNS認証をしてみます。
「外部ネームサーバーでのDNS認証」を選択してみると、TXTレコードが二つ表示されました。

このTXTレコードを移行元のネームサーバーにて追加します。
DNSレコードの編集はレンタルサーバによって可能かどうか確認が必要です。
移行元はコアサーバーで、ネームサーバはValue Domainの無料ネームサーバーを使っていますので、Value DomainでDNSレコード編集を行います。
Value DomainでDNSレコードを編集する
Value Domainのコントロールパネルから「無料ネームサーバー」>「ドメインのDNS設定」
DNS編集画面には記述のサンプルが掲載されています。
それらの例を参考にエックスサーバーで表示されたTXTレコードを追加します。

保存したら少し待ちます。TTLが3600秒だったので1時間程度
再びエックスサーバーのSSL設定画面で、「外部ネームサーバーでのDNS認証」を選んだ状態から「確認画面に進む」そのまま「追加する」をクリックすると、

認証が始まり、問題なければ、SSL設定が完了です。
これで、常時SSL化しているサイトでもスムーズにエックスサーバーへサーバー移転することができました。
レンタルサーバー Xserver