記事の目的
この記事は「現在運用中のSSL化済サイトを他のサーバーへ移転する場合の問題解決」を目的としています。
「問題」とは、SSL化済のサイトを他サーバーへ移行する場合には移行する時点でSSL化されていなければ、新しい検索流入が「SSLエラー」となる、という問題です。
この問題を解決するためには、引っ越し先のサーバーを引っ越し前にSSL化しておかなければなりません。
本記事は、この「引っ越し前にSSL化する方法」を説明したものです。
サイト移行時の問題点
DNS浸透の時間
移行元のサイトを「サイトA」とします。「サイトA」は現在すでに運用中で検索流入もあるサイトだと思います。そして、このサイトがSSL化されているサイトだとします。
移行先のサイトを「サイトB」とします。これから新しくワードプレス環境を作り、「サイトA」の内容をすべて引っ越しして「サイトB」を作ります。
「サイトA」の引っ越しには「All in one WP Migration」などの引っ越しプラグインを使うと簡単です。
移行元「サイトA」と全く同じ内容の「サイトB」ができたら、DNS(ネームサーバー)に登録しているサーバーのIPアドレスを「サイトA」のIPアドレスから「サイトB」のIPアドレスへ変更します。
このIPアドレスの変更は最大48時間で(実際は数十分~1時間程度ですが)インターネット上で浸透していき、やがて検索流入は「サイトA」から「サイトB」へ流入するようになります。
これがサイト移行の概要です。もし運用中サイトがSSL化されていなければ、この移行でうまくサイト移行できるでしょう。
サイトSSL化の条件
サイト移行の場合の問題点はSSL化にあります。
SSL化されたサイトを移行する場合は、移行先の「サイトB」がSSL化完了していなければ、せっかく検索流入があっても「サイトにアクセスできません」というエラーになってしまいます。
そして、「サイトB」をSSL化するためには一般的にはDNS(ネームサーバー)が「サイトBを向いている(サイトBのIPアドレスが登録されている)」必要があります。
SSL化サイトを移行する場合の問題点
サイトBをSSL化する作業を行うためには、DNSをサイトBに向けなければなりません。
DNSをサイトBに向けても浸透するまで48時間、さらにサイトBでSSL化の設定をしてもSSL有効になるまで数十分・・・この間の検索流入者はすべて「サイトにアクセスできません」となります。
これがSSL化サイトを移行する場合の問題点です。
SSL化された運用中のサイトをダウンタイム(アクセスできない時間)なしに移行する場合、最終移行(DNSをサイトBへ向ける)前に移行先サイトをSSL化するための仕組みや工夫が必要となります。
サイトをSSL化する仕組み
そもそも、「サイトをSSL化する」とはどういうことでしょうか?
「サイトをSSL化する」とは、運用するサイトに「SSL暗号化証明証」という電子ファイルをインストールすることを言います。
多くのレンタルサーバーでは、無料で使えるSSL暗号化証明証(Let’s Encryptなど)を提供しており、レンタルサーバーの管理パネルから「SSL化する」などのボタンによって自動的にインストールされる仕組みになっています。
ただし、問題点は多くの場合この時点で「DNSがサイトBを向いている」ことがインストール条件となります。
「DNSがサイトBを向いている」ことで、これからインストールしようとするSSL証明証が正しいことを認証するためです。
Xserver(エックスサーバー)へSSLダウンタイム無しに移行する
Xserver(エックスサーバー)のSSL化の仕組み
Xserver(エックスサーバー)ではドメイン登録後に「無料独自SSL設定」の機能によってドメインをSSL化するのが基本ですが、この方式ではDNSがXserverを向いていなければSSL化に失敗します。これは当たり前の動作ですね。
この基本的な機能に加えて、2019年8月より「SSL証明書事前発行」の機能をサポートしました。
つまり、Xserver(エックスサーバー)なら標準機能で引っ越し前(DNSをXserverへ向ける前)に登録ドメインをSSL化することができます。
SSL証明書事前発行の機能概要
この「SSL証明書事前発行」の仕組みは単純です。
Xserver(エックスサーバー)への引っ越し前の他社サーバーを使ってドメイン認証を行い、取得したSSL証明書をXserver(エックスサーバー)へインストールしてくれる、というSNI方式の基本的な仕組みを自動化しただけの「簡単・確実」な方法です。
認証は引っ越し前のサーバーで行う
この簡単な仕組みでSSL証明書を発行・適用するため、Xserver(エックスサーバー)で取得した認証用の
Xserver(エックスサーバー)はサーバーの性能や信頼性、そしてサポートの技術力の高さなどもあり、日本で最もメジャーなレンタルサーバーです。
かつては年間数万円のSSL証明証しかなかった時代に、日本で初めて「無料SSL証明証Let’s Encrypt」のサービスを提供し、国内サイトのSSL化を牽引してきました。
Xserver(エックスサーバー)ではサイト移行時のSSLダウンタイムを無くすためのツールが用意されており、もっとも簡単に「運用中のSSL化サイトをダウンタイム無しに移行」できるレンタルサーバーです。
また、この機能はXserver(エックスサーバー)の上位版「Xserver Business」でも導入されています。
Xserver(エックスサーバー)への移行方法のポイント
運用中のSSL化サイトをXserver(エックスサーバー)へ移行するのは、おそらくもっとも簡単で確実です。
- Xserver(エックスサーバー)ではSSL化の認証方法に「外部サーバー認証」が指定できる
⇒ 「外部サーバー」とは現在運用中のSSL化サイト - もっとも簡単・確実にDNSを向ける前にサイトをSSL化できる
Xserver(エックスサーバー)への移行方法の概要
Xserver(エックスサーバー)にはXserver(エックスサーバー)上のサイトをSSL化する時に「外部サーバーでのWeb認証」という認証方法でSSL証明証をインストールすることができます。
他社サーバーからの移転時にSSL証明書を事前発行!「無料独自SSL設定」機能バージョンアップのお知らせ | エックスサーバー
[エックスサーバー]無料独自SSL設定 | エックスサーバー
ここでの「外部サーバー」とは、すでに運用中の移行元のSSL化済サイトということです。
つまり、すでにSSL化されて運用しているサイト(ドメイン)が他のレンタルサーバー上にあれば、そのサイトを使って認証し取得したSSL証明証をXserver(エックスサーバー)のサイト(ドメイン)にインストールしてくれる機能です。
この機能を使えば、いとも簡単にDNSを移行先に向ける前に移行先サイトをSSL化することができます。
あとはサイトを引っ越ししてDNSをXserver(エックスサーバー)へ向けるだけで、SSLダウンタイム無しにサイト移行することができます。
Xserver(エックスサーバー)への移行手順
ドメインの登録
まずはドメインを登録します。このドメインはすでに運用中のサイトと同じドメインとなるはずです。
なお、Xserver(エックスサーバー)のドメイン登録では、ドメインの登録時点でSSL化できるように「無料独自SSLを利用する」というチェックがあります。
ドメイン登録時点で、DNSがXserver(エックスサーバー)を向いている場合には「無料独自SSLを利用する」をチェックすることでドメイン登録と同時にSSL化することができますが、今回の場合はこの時点ではDNSは移行元サイトを向いているはずなので、チェックしなくてもかまいませ。また、チェックしても「SSL化に失敗しました」のエラーがでますが、これも放っておいてかまいません。
ワードプレスのインストール
ドメインを登録したら、次にワードプレスをインストールします。
Xserver(エックスサーバー)には「WordPress簡単インストール」という機能があるので、インストールするドメインを指定して簡単にワードプレスをインストールすることができます。
サイト(ドメイン)のSSL化
では、登録したドメインにSSL証明証をインストールします。
メニューの「SSL設定」から「外部サーバーでのWeb認証」を選びます。
ここで提供(ダウンロード)される「トークンファイル」を、移行元のサイトに設置することで認証する仕組みです。
トークンファイルを移行元サイトに設置したら「確認画面へ進む」でSSL化します。
SSL化の確認方法
SSL証明証をインストールしても、すぐにはSSL有効になりません。しばらく(15分程度)時間がかかります。
この時点ではDNSはまだ移行元のサイトを向いているはずなので、普通にブラウザでアクセスしても移行元サイトが表示されてしまいます。
そこで、動作確認のために自分のパソコンの「hostファイル」へ新しいサイト(Xserver(エックスサーバー))のIPアドレスを登録します。これにより、自分のパソコンだけはXserver(エックスサーバー)へアクセスするようにすることができます。
SSL化完了したらプラグインで引っ越し
Xserver(エックスサーバー)の移行先サイトへ「https://~」でアクセスできれば、ワードプレスはSSL化が完了しています。
あとは、移行元サイトの内容を移行先(Xserver(エックスサーバー))へ引っ越しし、最後にDNSをXserver(エックスサーバー)へ向けるだけです。
引っ越しはワードプレスのプラグイン「All in one WP Migration」をおすすめ、簡単にワードプレスサイトの引っ越しができるありがたい無料プラグインです。
最後にDNSをXserver(エックスサーバー)へ向ける
移行先(Xserver(エックスサーバー))のサイト内容を確認しましょう。
サイトの記事がちゃんと見れるか、だけでなく例えば「お問い合わせ」などからのメール送信もできるかも確認しておきましょう。
問題なければ、最後にDNSをXserver(エックスサーバー)へ向けます。セオリーでは約48時間(実際は1時間程度)でDNSが浸透し、Xserver(エックスサーバー)のサイトへ検索流入するようになります。
また、作業のためにXserver(エックスサーバー)のIPアドレスを設定していた「hostsファイル」も設定を削除しておきましょう。
Xserver(エックスサーバー)へSSLサイトを移行する手順書(画像つき)
ここまでは運用中のSSLサイトをSSLダウンタイム無しにXserver(エックスサーバー)へ移行する手順の概要を説明してきました。
画像付きの詳しい移行手順はこちらの記事を参考にしてください。
wpXへSSLダウンタイム無しに移行する
wpXとは
wpXはサーバーの性能や信頼性、そしてサポートの技術力の高さなどもあり、日本で最もメジャーなレンタルサーバーです。
かつては年間数万円のSSL証明証しかなかった時代に、日本で初めて「無料SSL証明証Let’s Encrypt」のサービスを提供し、国内サイトのSSL化を牽引してきました。
wpXではサイト移行時のSSLダウンタイムを無くすためのツールが用意されており、もっとも簡単に「運用中のSSL化サイトをダウンタイム無しに移行」できるレンタルサーバーです。
また、この機能はXserver(エックスサーバー)の上位版「Xserver Business」でも導入されています。
wpXへの移行方法のポイント
運用中のSSL化サイトをwpXへ移行するのは、おそらくもっとも簡単で確実です。
- wpXではSSL化の認証方法に「外部サーバー認証」が指定できる
⇒ 「外部サーバー」とは現在運用中のSSL化サイト - もっとも簡単・確実にDNSを向ける前にサイトをSSL化できる
wpXへの移行方法の概要
wpXにはwpX上のサイトをSSL化する時に「外部サーバーでのWeb認証」という認証方法でSSL証明証をインストールすることができます。
他社サーバーからの移転時にSSL証明書を事前発行!「無料独自SSL設定」機能バージョンアップのお知らせ | エックスサーバー
[エックスサーバー]無料独自SSL設定 | エックスサーバー
ここでの「外部サーバー」とは、すでに運用中の移行元のSSL化済サイトということです。
つまり、すでにSSL化されて運用しているサイト(ドメイン)が他のレンタルサーバー上にあれば、そのサイトを使って認証し取得したSSL証明証をwpXのサイト(ドメイン)にインストールしてくれる機能です。
この機能を使えば、いとも簡単にDNSを移行先に向ける前に移行先サイトをSSL化することができます。
あとはサイトを引っ越ししてDNSをwpXへ向けるだけで、SSLダウンタイム無しにサイト移行することができます。
wpXへの移行手順
ドメインの登録
まずはドメインを登録します。このドメインはすでに運用中のサイトと同じドメインとなるはずです。
なお、wpXのドメイン登録では、ドメインの登録時点でSSL化できるように「無料独自SSLを利用する」というチェックがあります。
ドメイン登録時点で、DNSがwpXを向いている場合には「無料独自SSLを利用する」をチェックすることでドメイン登録と同時にSSL化することができますが、今回の場合はこの時点ではDNSは移行元サイトを向いているはずなので、チェックしなくてもかまいませ。また、チェックしても「SSL化に失敗しました」のエラーがでますが、これも放っておいてかまいません。
ワードプレスのインストール
ドメインを登録したら、次にワードプレスをインストールします。
wpXには「WordPress簡単インストール」という機能があるので、インストールするドメインを指定して簡単にワードプレスをインストールすることができます。
サイト(ドメイン)のSSL化
では、登録したドメインにSSL証明証をインストールします。
メニューの「SSL設定」から「外部サーバーでのWeb認証」を選びます。
ここで提供(ダウンロード)される「トークンファイル」を、移行元のサイトに設置することで認証する仕組みです。
トークンファイルを移行元サイトに設置したら「確認画面へ進む」でSSL化します。
SSL化の確認方法
SSL証明証をインストールしても、すぐにはSSL有効になりません。しばらく(15分程度)時間がかかります。
この時点ではDNSはまだ移行元のサイトを向いているはずなので、普通にブラウザでアクセスしても移行元サイトが表示されてしまいます。
そこで、動作確認のために自分のパソコンの「hostファイル」へ新しいサイト(wpX)のIPアドレスを登録します。これにより、自分のパソコンだけはwpXへアクセスするようにすることができます。
SSL化完了したらプラグインで引っ越し
wpXの移行先サイトへ「https://~」でアクセスできれば、ワードプレスはSSL化が完了しています。
あとは、移行元サイトの内容を移行先(wpX)へ引っ越しし、最後にDNSをwpXへ向けるだけです。
引っ越しはワードプレスのプラグイン「All in one WP Migration」をおすすめ、簡単にワードプレスサイトの引っ越しができるありがたい無料プラグインです。
最後にDNSをwpXへ向ける
移行先(wpX)のサイト内容を確認しましょう。
サイトの記事がちゃんと見れるか、だけでなく例えば「お問い合わせ」などからのメール送信もできるかも確認しておきましょう。
問題なければ、最後にDNSをXserver(エックスサーバー)へ向けます。セオリーでは約48時間(実際は1時間程度)でDNSが浸透し、wpXのサイトへ検索流入するようになります。
また、作業のためにwpXのIPアドレスを設定していた「hostsファイル」も設定を削除しておきましょう。
wpXへSSLサイトを移行する手順書(画像つき)
ここまでは運用中のSSLサイトをSSLダウンタイム無しにwpXへ移行する手順の概要を説明してきました。
画像付きの詳しい移行手順はこちらの記事を参考にしてください。
mixhost(ミックスホスト)やカラフルボックスへSSLダウンタイム無しに移行する
この手順で移行できるサーバー
最近人気のレンタルサーバーに「LiteSpeed系」のサーバーがあります。WebサーバーにApacheやnginxではなく、より軽量・高速な「LiteSpeedサーバー」を使ったサーバーソリューション(仕組み)です。
そして、この仕組みを採用しているレンタルサーバーは、管理パネルに「cPanel」という世界共通の管理パネルを採用しています。
ここから説明する「SSL化サイトをSSLダウンタイム無しにサイト移行する」手順の対象となるのは、この「cPanel」を採用しているレンタルサーバーです。
具体的には以下のレンタルサーバーになります。
- mixhost(ミックスホスト)
- カラフルボックス
- Jet BOY
※これら以外にもあるかもしれません・・・