サーバを変更したい時のやり方を調べると様々な方法がありますよね。
一番シンプルで大胆な方法はネームサーバーを新しいサーバーに切り替えて、データを移行する方法ですが、
この場合SSLを失敗したり、その作業中はサイトが見られないこともあり、あまりおすすめはしない方法です。
ではどういった移転方法がスムーズ化というと、ネームサーバーの切り替えの前に、新しいサーバーにドメインを登録し、SSL化を済ませ、データをインポートしてから望むのが一番キレイにサイト移転ができると思います。
本記事ではそのやり方を解説します。
All-in-One WP Migrationを使って、SSLのダウンタイム無しでサーバー移転する方法
前述したように、必要な設定を事前に済ませて、から最後にネームサーバーだけ切り替えるので、
確実かつスムーズにサーバー移転ができます。
今回は下記のサービスを利用して説明したいと思います。
- ドメイン管理サービス : お名前.com
- 移行先のサーバー: エックスサーバー
※事前にXserverのサーバー契約が済んでいることを前提とします。
エックスサーバーにログイン。
サーバー管理ボタンを押すとサーバーパネルの画面が表示されます。
サーバーパネルの右上のドメイン設定を押します。
ドメイン設定追加のタブから、登録したいドメイン(運用中のドメイン)を入力します。
無料独自SSLやXアクセラレータ等の設定にはチェックをしません。
追加するボタンを押せば、ドメインの登録が完了です。
SSLの設定をします。
認証にはいくつか方法があります。
- ①エックスサーバーのネームサーバーへ変更
- ②他社サーバーでのWeb認証
- ③他社ネームサーバーでのDNS認証
今回は②他社サーバーでのWeb認証のやり方でSSLの認証をします。
サーバーパネルのドメインの項目にあるSSL設定の項目を選択。
変更ボタンを押した後
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にアクセスできませんでした。と表示されます。
これはアップロードする場所を間違えているということになります。
成功すると確認画面が表示されます。
ここでもONのボタンを押しましょう。
しばらく待つと独自SSL設定が成功しました。
まずは新規でWordPressのインストールをインストールしましょう。
エックスサーバーには「WordPress簡単移行」という機能がありますので、こちらを使って他のWordPressサイトのデータを移行することもできます。
ただしセキュリティプラグインやサーバー環境によっては失敗しますので、今回はいつも使っているAll-in-One WP Migrationを使ってサイトのデータを移行します。
サーバーパネルの「WordPress簡単インストール」から、WordPressインストールのタブを選び
インストールに必要な情報を入力しましょう。
確認画面へ進むを押して、インストールボタンを押します。
しばらく待つとインストールが完了しました。
ここでPHPのバージョン8系が最新になってしまうことがあります。
サーバーパネルのPHPの項目からPHP Ver.切替の項目を選択して7.4など現行のサイトのPHPのバージョン似合わせて置くと後のサイトの移行作業がスムーズにいきます。
WordPressをインストールしましたが、ネームサーバーの設定をしていてないので、このままだと新しく作ったサイトは閲覧ができません。
本来ここでパソコンのhostのファイルにIPアドレスを記載して表示することができるのですが、
今回はChromeの拡張機能でIPアドレスを指定して、新しいWordPressサイトにアクセスしてみましょう。
まずはサーバーパネルから左側のメニューにあるサーバー情報を選択。
そこからIPアドレスを調べましょう。
次にhostのファイルにアクセスします。
Windowsの場合
メモ帳アイコンを右クリックをして管理者として実行を選択して開きます。
ファイルメニューから開くを選択して下記のパスで開きます。
C:\Windows\System32\drivers\etc\hosts
開いたファイルの最後に先程調べたIPアドレスとドメインを記載したテキストを挿入します。
123.456.789.000 example.com
123.456.789.000 www.example.com
保存すれば、完了です。
Macの場合
アプリケーション > ユーティリティ >ターミナルを開きましょう。
sudo vi /private/etc/hosts
と入力してMacのパスワードを入力するとvi エディタが表示されます。
一番したの行に移動してiキーを押して、先程調べたIPアドレスとドメインを記載したテキストを挿入します。
123.456.789.000 example.com
123.456.789.000 www.example.com
保存をします。
ESCキーでInsertモードを抜けて、下記のコマンドを入れて保存しましょう。
:w !sudo tee %
:q!
わからない場合はvi エディタの使い方を調べましょう。
サイトの確認
ここで確認をしてみましょう。
All-in-One WP Migrationを使ってサイトデータをインポート
登録したドメインにアクセスするとインストールしたばかりの新しいWordPressサイトが表示されるはずです。
https://example.com/wp-admin/
そうしましたら管理画面にアクセスします。
あとはAll-in-One WP Migrationのプラグインをインストールして、データをインポートしましょう。
データのインストールが完了したら、ユーザーの設定から管理画面の背景色を変更しておきます。
以上でサイトのデータ移行が完了です。
先程、書き換えたhostsの設定は削除して戻しておきましょう。
あとはネームサーバーを切り替えするだけです。
今回はドメイン管理サービスはお名前.comから切り替えてみます。
お名前.comにログイン後、ネームサーバーの設定の項目から、さらにネームサーバーの設定の項目を選びます。
そして他のネームサーバーの利用タブを選択して、
まずはエックスサーバーのネームサーバーを入力します。
ns1.xserver.jp
ns2.xserver.jp
ns3.xserver.jp
ns4.xserver.jp
ns5.xserver.jp
入力が終えたら確認画面へ進むを押し、設定するボタンを押せばネームサーバーの切り替えが完了です。
数分後に移転先のWordPressの管理画面を確認して、移転先にログインできているか確認しましょう。
以上で、SSLのダウンタイムを起こさずにサイト移転ができました。
まとめ
今回のやり方は事前準備に時間がかかりますが、安全にサイトの表示を維持したまま移転ができる方法になります。
ぜひ参考にしてみてください。
ちなみにサーバーを移転した際にドメインのメールの設定(DNSレコードの追加)は必要なので、それぞれ使っているサービス(例えばGoogle Workspace等)があれば、調べて設定しておきましょう。