新年あけましておめでとうございます。
本年もよろしくどうぞお願いいたします。
このサイトは現在「常設SSL」設定をしています。
時代の流れもありますが、そのほうが見ていただく方にも良いですし、Googleにも良いからです。
いままで「ラピットのSSL3年版」を使用していましたが、もうじき期限切れになるため更新作業が必要となりました。ただこの3年の間にさくらサーバーの標準機能として「常時SSL(無料SSL)」が導入されました。
性能的にはラピットの標準SSLと遜色ないため、それならば更新作業の必要がなく、利用料もかからない無料SSLにしようと思いました。
ところが今回、思わぬ落とし穴にハマり、2時間にわたりホームページが閲覧できない状態になりました。
その反省と、解決方法を忘備録として記録いたします。
まずはラピット→無料SSLへの切り替えの方法
通常SSLを変更場合は、新しく切り替えするSSLを「追加設定」します。
これはSSL解除により、ホームページが閲覧できなくなることを防止するためです。
たださくらの無料SSLを設定する場合は「現在のSSL設定全削除後、新たに設定」します。これだけです。詳しくはさくらのサポートページに記載されています。
この方法だと当然「ホームページが閲覧できなくなる期間が発生します。」
本ブログもアクセス数がそこそこあり、一時的にでも閲覧できなくなるとそこそこ影響がでます。そういったリスクも考え、アクセス数が極端に少なくなる正月に切り替えをしようと思いました。
正直週末よりもアクセスが少なくなるため、ホームページが閲覧できなくなっても影響が少ないと考えました。
ということで、さくらのコントロールパネルから既存のSSL設定を全削除し、無料SSLの設定を行いました。
あとは設定が完了するのを待つだけです。
以前無料SSL設定をした際には10分ほどで完了したので、10分程度ならば問題ないだろうとタカをくくっていました。
余談ですが今にして思うと、SSL変更作業する時期と時間を選ぶことは本当に大切だと思いました。
待てど暮らせど無料SSL設定が完了しない。
遅くとも30分もあれば終わるだろうと思っていましたが大間違いでした。
1時間過ぎても設定が完了しません。
こういった場合、管理画面をあれこれいじると余計に事態が悪化するため、何もせずじっと待つことがセオリーです。
ただ明らかにSSLの設定完了が遅れていると感じられたため、さくらのサポートページを見てみることにしました。
サポートページのよくある質問を見てみると「数分~1時間で終わります」と記載されていました。
とっくに1時間経過しています。
これは何かサーバー側でシステムエラーが発生しているのではないかと思い、サポートに連絡しようと思いました。しかし
お正月期間はサポート窓口はお休み。
窓口業務が正月期間お休みなのは当たり前です。
ただ、ホームページが閲覧できない状態を放置しておくわけにもいかないため、なにか解決方法がないかググって調べてみました。
ググって調べると気になる情報を発見
設定後1時間30分を超えたところで「何か問題が起こっている」と確信し、ググって同様の事例がないか調べました。
すると気になる情報を見つけました。
「さくらの無料SSLは301リダイレクトを設定していると無料SSLクローラーがエラーとなり、設定が完了しない」
どういうことかというと、無料SSL設定後クローラーが該当ドメインにhttp://(SSL無し)でアクセスに行きますが、強制的にhttps://にリダイレクトされるとクローラーがドメインエラーと判断し、リトライ待ちになるというものです。
この記事を見つけてピンときました。
もともとラピットのSSLを導入していたため、http://でアクセス(SSLなしアクセス)された場合、301リダイレクトでSSLにリダイレクトしていました。
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
.htaccessを削除して無事SSLの設定が完了
なるほど原因はこれだと思い、リダイレクト設定をした.htaccessファイルのバックアップを取り、サーバー上の.htaccessファイルをまるごと削除して待ちました。
それから20分後、無事無料SSLの設定が完了しました。
SSLの設定完了後、バックアップしておいた.htaccessファイルをサーバーに戻し、無事元通りになったことを確認しました。
非常に中身の濃い2時間でした。
ラピットSSL→無料SSLに切り替えする場合、.htaccessの301リダイレクトでという落とし穴があることを学びました。
今回もよい経験をいたしました。
本記事がまたお役に立てば幸いです。