WEBサイトをサーバー移行する時の簡単な流れは下記ページに記載しました。まず、この流れを踏まえた上で解説します。
WEBサイトのサーバー移行の手順を疑問と共にさらっと解説【初心者向け】
WEBサイトのサーバー移行はけっこう大変だし神経を使います。こでは疑問点を踏まえ、簡単な流れを解説しています。続きを見る
SSL化したサイトをサーバー移行する際の問題点と解決方法
2019年8月現在、エックスサーバーでは、サーバー移転時に前もってSSL証明書を発行することが可能になりました。下の情報は過去のものとなっています。
エックスサーバーの場合、既に運営中のドメインを設定する際、ネームサーバーの変更後でないと無料SSL化ができません。
これにより、サーバー移行時にちょっとした問題が起こります。なので、できればネームサーバーの変更前にSSL化しておきたい。
SSLの持込み(他社で取得したSSLが利用できる)に対応しているサーバーならば「 Let's Encrypt (レッツ・エンクリプト)」等を利用することで可能になるようですが、残念ながらエックスサーバーは対応していないんですよね。
ポイント
SSLの持込みに対応しているサーバー(さくらのレンタルサーバ
SSL化できない理由
エックスサーバーの無料独自SSLの仕様は下記の通り。
まず、独自SSLの申込には所有者確認が必要。
いくつかの確認方法はあるのですが、エックスサーバーの無料独自SSLの場合、ネームサーバーもしくはDNSレコードがエックスサーバーを参照していない状態(ドメインのネームサーバーを変更していない状態)では、所有者の確認ができません。
そのため、ドメイン設定時に「SSLを利用する」にチェックを入れても、本人確認ができずに失敗してしまいます。
SSL化できないことで起こる問題点
問題点が発生するとはいえ、サーバー移行自体はできます。以下の問題点が妥協できないなら、解決方法を試してみて下さい。
新サーバー(本番環境)のWEBサイトが公開前に確認できない
パソコン内のシステムファイル「hostsファイル」を編集すれば、ネームサーバーを変更する前でも新サーバーのWEBサイトを見ることができます。つまり、本番環境にアップロードしたWEBサイトを十分にチェックできるんですよね。
しかしエックスサーバーのように、仕様によりネームサーバー変更前にSSL化できない場合、話は別。
これがどういう状態かというと…
旧サーバーのURLが「https から始まるサイト」なのに、新サーバーでは「http から始まるサイト」になってしまっている。
この状態で「https」でアクセスしようとすると、セキュリティーエラーが出てしまうのでWEBサイトが表示されません。
「http」でアクセスすれば表示はされますが、移行するサイトがWordPressの場合は、httpsに飛ばされてしまうので、そのままでは表示できません。
データベースの設定をいじることによって、WordPressのサイトも何とか「http」で見ることができますが、実際に試してみたところ、ブラウザによって画像が出たり出なかったり、崩れがあったりなかったりと表示がかなり変わるので、ナニが本当なのか分からず仕舞い…。
これじゃ、公開前の確認の意味があまりないような…。
セキュリティエラーが発生する
気が気じゃないのが、ネームサーバー変更後、DNSが切り替わりhttps化するまでの間に、必ずセキュリティエラーが出てしまうこと。
実際に、SSL化(https化)する前にネームサーバーを先に変更して移転させたサイトがあるのですが…
ネームサーバー変更後にhttps化できると言っても、変更直後すぐにできるわけではありませんでした。まず、DNSが切り替わる(ドメインがエックスサーバーに紐付く)までに時間が掛かります。
切り替わったタイミングを自動でお知らせしてくれるわけでもないので、時間をおきながらSSL化に挑戦。失敗を何度か繰り返し、やっとhttps化に成功。
ただ、https化自体も少し時間が掛かるんですよね。自分のサイトではトータル1時間くらいはセキュリティエラーが発生した状態になりました。
やはり、新サーバーでもhttps化した状態で、WEBサイトを確認したうえで、ネームサーバーは変更したい。
スポンサードリンク
ネームサーバー変更前にSSL化する2つの方法
「WordPress簡単移行 β版」を利用(WordPress限定)
WordPressで作成したサイトなら、まずこの方法を試してみて欲しい。
2018年12月に登場したエックスサーバーの新機能、「WordPress簡単移行 β版」。これを利用してサーバー移行することでSSL化が可能になるんです。
実際に試してみたところ、データの移行には成功したと思います。
この機能を使ってサーバー移行を行うと、SSL証明書発行のため、移行元サイトに一時ファイルが作成されるそうです。(←サポートさんに聞きました)そのお陰で、SSL化することができるそうなのですが…。
自分の旧サーバー(XREA)では、それがうまくできなかったのかもしれません。WordPressのプラグインや .htaccess の設定など、いろいろ弄って何度も挑戦しましたが、何度やってもSSL化できませんでした。
「オプション独自SSL」を利用する
最終手段。有料の「オプション独自SSL」を利用すること!無料独自SSLとは異なる方法で所有者確認ができるため、SSL化が可能です。(←エックスサーバーのサポート様に確認済み)
料金は 1,000円~(/1年)。1,000円で安心が手に入るなら、お安くないですか?自分もWordPressの移行には、これを利用してみたいと思っています。試してみたら、その辺についてもレビューしますね。