Amazonで商品を見る セール会場へ

All-in-One WP Migrationでサーバー移転する手順|SSL・DNSを切り替え前に確認

サーバを変更したい時のやり方を調べると様々な方法がありますよね。

一番シンプルで大胆な方法はネームサーバーを新しいサーバーに切り替えて、データを移行する方法ですが、

この場合SSLを失敗したり、その作業中はサイトが見られないこともあり、あまりおすすめはしない方法です。

ではどういった移転方法がスムーズ化というと、ネームサーバーの切り替えの前に、新しいサーバーにドメインを登録し、SSL化を済ませ、データをインポートしてから望むのが一番キレイにサイト移転ができると思います。

切り替え前にSSLとデータを準備して、停止や警告のリスクを減らす方法です。

本記事ではそのやり方を解説します。

以下のコンテンツを追加しました。

追加コンテンツ
  • ホストの書き換えツール
  • サブドメインの場合
  • サブディレクトリの場合
  • クラウドフレアの設定
目次

著者

WEB制作をしているデジタルノマド
WordPressのカスタマイズが好きで、色々と自作しています。

WordPressのカスタマイズに困ったらご相談ください!

All-in-One WP Migrationを使って、SSLのダウンタイム無しでサーバー移転する方法

前述したように、必要な設定を事前に済ませて、から最後にネームサーバーだけ切り替えるので、

切り替え前に移行先の動作を確認できます。ただし、無停止を保証するものではありません。

今回は下記のサービスを利用して説明したいと思います。

事前SSL認証の可否はサービスごとに異なります。以下の画面は過去の操作例です。

  • ドメイン管理サービス : お名前.com
  • 移行先のサーバー: エックスサーバー

※事前にXserverのサーバー契約が済んでいることを前提とします。

STEP
サーバーにログイン

エックスサーバーにログイン。

サーバー管理ボタンを押すとサーバーパネルの画面が表示されます。

エックスサーバーの管理画面でサーバー管理ボタンを押してサーバーパネルを開く手順。
STEP
独自ドメインの登録

サーバーパネルの右上のドメイン設定を押します。

ドメイン設定追加のタブから、登録したいドメイン(運用中のドメイン)を入力します。

無料独自SSLやXアクセラレータ等の設定にはチェックをしません。

ここでSSL化にチェックをしても失敗します。

後ほど手動でSSL認証をします。

ドメイン設定で無料独自SSLなどのチェックを外し、追加するボタンを押す画面。

追加するボタンを押せば、ドメインの登録が完了です。

追加するボタンを押してドメインの登録が完了した状態を示す画面。
STEP
SSL化

SSLの設定をします。

新しいサーバーと登録したドメインに対してSSLの認証をしても、運用中のサイトの表示には影響はありません。

認証にはいくつか方法があります。

  • ①エックスサーバーのネームサーバーへ変更
  • ②他社サーバーでのWeb認証
  • ③他社ネームサーバーでのDNS認証

今回は②他社サーバーでのWeb認証のやり方でSSLの認証をします。

サブドメインの場合も別でSSL認証が必要です。

サブディレクトリの場合は必要ありません。

サーバーパネルのドメインの項目にあるSSL設定の項目を選択。

サーバーパネルのドメイン項目からSSL設定を選択する手順。

変更ボタンを押した後

2つのトークンファイルをダウンロードしておきます。

変更ボタンを押した後に表示される2つのトークンファイルのダウンロード画面。

ダウンロードしたファイルは、ダウンロードボタンの下に記載されている配置場所のURLにアップロードする必要があります。

  • http://example.com/.well-known/acme-challenge/トークンファイル名
  • http://www.example.com/.well-known/acme-challenge/トークンファイル名

本来であればFTPを使ってデータをアップロードしますが、今回はWordPressのプラグイン「WP File Manager」を使ってデータをアップロードします。

まず移植元の現在のWordPressの管理画面を開きましょう。

そしてプラグインメニューからFile Managerと検索してインストールします。

移行元の管理画面でプラグインメニューから検索してインストールする画面。

有効化した後、管理画面にWP File Managerが表示されますので、画面を開き、

先程のアップロード先にトークンをアップロードしましょう。

  • http://example.com/.well-known/acme-challenge/トークンファイル名
  • http://www.example.com/.well-known/acme-challenge/トークンファイル名

下記のような階層を作成してファイルをアップロードすればOKです。

指定された階層にトークンファイルをアップロードした状態の画面。

先程のエックスサーバーの画面に戻り、ONにするボタンを押しましょう。

失敗する場合、トークン設置URLにアクセスできませんでした。

と表示されます。

配置先のほか、HTTP認証・アクセス制限・リダイレクト・DNS・キャッシュなども確認します。エックスサーバー公式の現在のSSL手順で、認証URLの条件を確認してください。

※新しいサーバーではなく、現在のサーバーにデータをアップロードします。

現在のサーバーへアップロード後に表示される確認画面。

成功すると確認画面が表示されます。

確認画面でボタンを押して独自SSL設定が完了した状態を示す画面。

ここでもONのボタンを押しましょう。

しばらく待つと独自SSL設定が成功しました。

反映まで1時間ほど待ちましょう。

反映待ちの際にアクセスしたときに表示される案内メッセージ画面。

移行先のサーバーのIPを指定して、サイトにアクセスしてみた時に

無効なURLです。
プログラム設定の反映待ちである可能性があります。
しばらく時間をおいて再度アクセスをお試しください。

という表示が出る場合は、SSLの反映を待ちましょう。
移行先サーバーへのアクセス時に表示されるプログラム設定の反映待ち画面。
STEP
WordPressのインストール

まずは新規でWordPressのインストールをインストールしましょう。

エックスサーバーには「WordPress簡単移行」という機能がありますので、こちらを使って他のWordPressサイトのデータを移行することもできます。

ただしセキュリティプラグインやサーバー環境によっては失敗しますので、今回はいつも使っているAll-in-One WP Migrationを使ってサイトのデータを移行します。

サーバーパネルの「WordPress簡単インストール」から、WordPressインストールのタブを選び

インストールに必要な情報を入力しましょう。

簡単インストールから必要な情報を入力して確認画面へ進む手順。

確認画面へ進むを押して、インストールボタンを押します。

しばらく待つとインストールが完了しました。

インストールボタンを押して完了した状態を示す画面。

移行元と移行先のPHP・データベースの対応状況を確認します。

PHP 7.4はサポートが終了しています。PHP公式のサポート対象版から、WordPress・テーマ・プラグインに対応する版を選び、移行先で動作を確認します。古いPHPへ戻して公開する手順にはしません。

サーバーパネルの切り替え項目でバージョンを移行元に合わせる設定画面。

ここで、WordPressの設定>一般からhttpsに変更しておきましょう。

一般設定でアドレスの設定を変更する画面。
STEP
WordPressデータの移行

WordPressをインストールしましたが、ネームサーバーの設定をしていてないので、このままだと新しく作ったサイトは閲覧ができません。

本来ここでパソコンのhostのファイルにIPアドレスを記載して表示することができるのですが、

今回はChromeの拡張機能でIPアドレスを指定して、新しいWordPressサイトにアクセスしてみましょう。

まずはサーバーパネルから左側のメニューにあるサーバー情報を選択。

そこからIPアドレスを調べましょう。

サーバーパネルのメニューからサーバー情報を選択してIPアドレスを確認する画面。

次にhostのファイルにアクセスします。

サブドメインの場合も別途、記述も必要です。

サブディレクトリの場合は記述は不要です。

Windowsの場合

メモ帳アイコンを右クリックをして管理者として実行を選択して開きます。

ファイルメニューから開くを選択して下記のパスで開きます。

C:\Windows\System32\drivers\etc\hosts

開いたファイルの最後に先程調べたIPアドレスとドメインを記載したテキストを挿入します。

192.0.2.10 example.com
192.0.2.10 www.example.com
192.0.2.10 sub.example.com

保存すれば、完了です。

Macの場合(ツールを使用)

macのホストの書き換えはviエディタなどを使うので変更が面倒です。

ですので、gasmaskというホスト切り替えツールを使ってIPアドレスを切り替えると便利です。

下記からダウンロードしてアプリをインストールしましょう。

使い方は簡単で、オリジナルのホストを複製して書き換えたいIPアドレスを記述してActivateを押すだけです。

192.0.2.10 example.com
192.0.2.10 www.example.com
192.0.2.10 sub.example.com
設定ファイルにIPアドレスとドメインを記述した例を示す画面。

Macの場合

アプリケーション > ユーティリティ >ターミナルを開きましょう。

sudo vi /private/etc/hosts

と入力してMacのパスワードを入力するとvi エディタが表示されます。

一番したの行に移動してiキー(インサートモード)を押して、先程調べたIPアドレスとドメインを記載したテキストを挿入します。

192.0.2.10 example.com
192.0.2.10 www.example.com
192.0.2.10 sub.example.com

保存をします。

ESCキーでInsertモードを抜けて、下記のコマンドを入れて保存しましょう。

:w!

を入力して上書き保存

:q!

を入力してviの画面を終了する。

わからない場合はvi エディタの使い方を調べましょう。

サイトの確認

ここで確認をしてみましょう。

同じブラウザの状態で開くと、キャッシュの関係でIPアドレスで指定したサーバーのサイトが開かない場合があります。

HTTPSのまま確認し、証明書のホスト名・期限・接続先を調べます。証明書警告を無視したり、HTTPで管理画面へログインしたりしないでください。シークレットモードだけでDNSキャッシュが解消するとは限りません。

シークレットモードで新しいサイトを開いてアクセスを確認する手順。

All-in-One WP Migrationを使ってサイトデータをインポート

登録したドメインにアクセスするとインストールしたばかりの新しいWordPressサイトが表示されるはずです。

https://example.com/wp-admin/

そうしましたら管理画面にアクセスします。

あとはAll-in-One WP Migrationのプラグインをインストールして、データをインポートしましょう。

※詳しいプラグインの使い方は割愛します。

All-in-One WP Migrationの記事に関してはこちらも参考になります。

データのインストールが完了したら、ユーザーの設定から管理画面の背景色を変更しておきます。

移行元と見分けるためにユーザー設定から管理画面の背景色を変更する画面。

これはどちらのサイトか判別をつけやすくするためにあえて設定を変更します。

以上でサイトのデータ移行が完了です。

先程、書き換えたhostsの設定は削除して戻しておきましょう。

追加したhosts行だけを戻し、接続先を再確認します。必要に応じてOS・ブラウザーのDNSキャッシュを更新します。再起動が常に必須ではありません。

STEP
ネームサーバーの変更

あとはネームサーバーを切り替えするだけです。

今回はドメイン管理サービスはお名前.comから切り替えてみます。

切り替え前に、新しいDNSへ必要なA・AAAA・CNAME・MX・TXTレコードを準備します。

メールのMXやSPF・DKIM・DMARCなどのTXTは、自動で引き継がれるとは限りません。現在のDNSを控え、移行先と照合してからネームサーバーを変更します。

お名前.comにログイン後、ネームサーバーの設定の項目から、さらにネームサーバーの設定の項目を選びます。

そして他のネームサーバーの利用タブを選択して、

まずはエックスサーバーのネームサーバーを入力します。

ns1.xserver.jp
ns2.xserver.jp
ns3.xserver.jp
ns4.xserver.jp
ns5.xserver.jp
ネームサーバーの切り替えに必要な情報を入力する設定画面。

入力が終えたら確認画面へ進むを押し、設定するボタンを押せばネームサーバーの切り替えが完了です。

数分後に移転先のWordPressの管理画面を確認して、移転先にログインできているか確認しましょう。

ネームサーバーの設定を完了し、移転先の管理画面にログインして確認する手順。

切り替え後は複数の回線からHTTPS・ページ・フォーム・メールを確認します。無停止を保証する手順ではありません。

すぐにサイトを更新することは、控えておくことをおすすめします
(24〜72時間後くらいが目処)

トラブルシューティング

移転に際してのトラブルシューティングを書いておきます。

古いサイトにアクセスしてしまう。

DNS CHECKERなどで調べるとちゃんと移転先のIPアドレスになっているのに、ログインすると古い画面になる場合は、試しにVPN接続してみましょう。

またはAndroidなどの別の端末でサイトをみて見ることもおすすめします。

その際に古いサイトだとわかるようにヘッダーメニューの文言などを変えてみるとチェックしやすいと思います。

他の端末や回線で新しいサイトが表示されているのであれば移行作業は問題ないです。

作業したPCから新しいサイトへログインするのは時間がかかるので待ちましょう。

ISP(インターネットサービスプロバイダー)側のDNSキャッシュの更新は数時間から最大48時間程度かかります。

ネット回線を切り替えるとDNSの切り替えチェックが容易になります。

まとめ

今回のやり方は事前準備に時間がかかりますが、安全にサイトの表示を維持したまま移転ができる方法になります。

ぜひ参考にしてみてください。

ちなみにサーバーを移転した際にドメインのメールの設定(DNSレコードの追加)は必要なので、それぞれ使っているサービス(例えばGoogle Workspace等)があれば、調べて設定しておきましょう。

この記事で紹介しているコードは、GitHubのMOTOKI-LLC/WAZA-codeにもまとめています。

切り替え前の確認と戻し方

hosts例の192.0.2.10は説明用アドレスです。必ず移行先の実際のIPへ置き換えます。hostsは手元の端末だけの変更で、SSL証明書の発行や外部訪問者の接続先は変えません。

移行前にデータベース・アップロード・テーマ・プラグインをバックアップします。注文やフォーム受付など更新が続くサイトは、最終同期と受付停止の時間を決め、旧新両方への書き込みを避けます。移行先のインポートはデータを上書きするため、移行元では実行しません。不具合時は控えておいたDNS設定へ戻し、切り替え後の新規データを確認してから復旧します。旧サーバーは確認が済むまで保持します。

  • URLをコピーしました!

移転作業を任せたい方へ

サーバー移転・ドメイン移管の代行

WordPressサイトの移転¥25,000〜、サーバー移転¥40,000〜、ドメイン移管¥15,000〜(税込)。ダウンタイムなしの切り替えとDNS設定に対応し、作業後1ヶ月は無料でサポートします。

WAZAの有料記事のサブスクリプションも開始しました。

サービス

Service

Webサイトのサイト・サーバー移転・ドメイン移管のサービスに関心がありましたら、ぜひ詳細をご覧ください。

目次