【WordPress】常時https化作業でブログが表示できなくなった話

WordPress
スポンサーリンク

この度、当ブログでも常時https化を実施しました。

ブログの開設当初からhttpサイトでやって来ましたが、世の中の流れ(=Googleの方針)には素直にしたがっていきます。

さて、当ブログはさくらインターネットのレンサバにWordPressを導入して運用していますが、今回の常時https化の作業でミスり、一時的にサイトが表示できなくなったので、その時の内容を記事にします。

 

常時https化作業の流れ(さくらレンサバの場合)

証明書の発行

  1. 「サーバコントロールパネル」にログインしてメニュー内の「ドメイン/SSL設定」を表示。
  2. ドメイン一覧内の対象のドメイン行の「証明書」列にある”登録”を押下。
  3. 適用する証明書の種類を選択する画面で「無料SSL設定へ進む」を押下し次の画面で証明書発行。
  4. 数十分待って、証明書発行完了メールが届いたら、httpsでサイトに繋がる。

さすがに最近のレンサバだと、証明書の発行から適用まで自動化されていてとっても楽ですね。こういうサービスがない場合は、サーバのCSRを取得して、本人確認をしたうえで証明書を発行してもらい、それをインストールして・・・とかなり面倒です。仕事でやる分には面倒でもやりますが、プライベートのサーバ運用で面倒なことはやりたくないですからね。

 

サイト内リンク修正とリダイレクト設定

ただ、これだけだと、httpsでアクセスは出来るものの、サイト内部で使われている各ページへのリンク等はhttpのままなので、httpsのページにアクセスしてもブラウザが警告を表示したり不完全です。

また、ユーザーがブックマークに登録していた場合はhttpのアドレスでアクセスしてきてしまうので、httpのアドレスでアクセスされてきたらhttpsのページにリダイレクトさせる設定も必要です。

よって次は以下の作業が必要になります。

  • サイト内のすべてのリンクをhttpsに修正
  • httpでのアクセスをhttpsページへリダイレクトする設定追加

さくらインターネットのレンサバでWordPressを導入して運用しているユーザー用に、上記二点の処理を自動でやってくれるプラグインが提供されており、それを利用することにしました。

対象のプラグイン:SAKURA RS WP SSL

このプラグインは、有効化したうえで、設定画面で二つチェックを付ける項目があり、内容を確認のうえ画面下部の「SSL化を実行する」を押下するだけです。

簡単ですね。

 

公開ページとWPの管理画面にアクセス出来ない…

いざ動作確認をおこなうと、httpsのURLで公開ページやWordPressの管理画面に繋がらない…。

httpのURLはどうか?

繋がらない…。そういえば、今回作業前に環境のバックアップ取るの忘れてたなっと…。

.htaccessでリダイレクト設定削除

一瞬焦りましたが、レンサバなので、契約しているサーバーを管理するためのレンサバ用のコントロールパネルがあり(さくらなら「レンタルサーバコントロールパネル」)、そこからサーバーの物理ファイルにアクセス出来るため、.htaccessファイルを開いてプラグインで追加されたリダイレクト設定の記述を削除します。

【参考】さくらインターネットの常時https化トラブルシューティングページ
https://help.sakura.ad.jp/115000051662/

これで再度httpのURLでWordPressの管理画面に接続できるようになったので、設定変更漏れがないか確認します。

ありました。WordPressの管理画面のメニュー内「設定」→「一般」で表示する設定項目内に、「WordPressアドレス(URL)」「サイトアドレス(URL)」という設定項目があり、そこにはhttpから始まるURLで記述されたままでした。これがよく聞くリダイレクトループでしょうか。

取り敢えずそこの記述をhttpsから始まるURLに修正し、先ほど削除した.htaccessのリダイレクトの記述を元に戻します。

これで問題なくhttpsでアクセス出来るようになったはずと、httpsのURLで再度アクセスを試みると・・・直っていない…。

 

常時https化対応用プラグインのバージョンアップ

取り敢えず復旧の仕方は覚えたので、サクッと.htaccessのリダイレクトの記述を削除して管理画面への経路を確保。

何が問題なのか考えるが思い浮かばず、取り敢えずさくらインターネットが提供している常時https化対応用プラグイン(SAKURA RS WP SSL)は自分でインストールした記憶が無いなと思いつきました。おそらく初期にWordPressをインストールした際にデフォルトでインストールされてくるプラグインだと思われます。だったらかなり古いかもと考え、アップデートの通知も来ていたため、取り敢えずアップデートを実施してみると、当然バージョンが上がります。

再度プラグインを有効にして、httpsでのアクセスを実施してみたところ・・・繋がりました!

何で??と思い、.htaccessの記述を確認すると、削除したリダイレクトの設定は、プラグインをアップデートして再度有効化したことで再度書き込まれていますが、ただ、前のバージョンと記述内容がだいぶ違う…

プラグイン自体の不具合とかではないと思いますが、新しいプラグインであれば、より環境に併せて適切に.htaccessを修正してくれるようになったということでしょうか。

取り敢えず、無事繋がるようになって良かったです。

復旧後の残作業

プラグインで書き換えができなかった部分

httpsで接続は出来るのですが、ブラウザのアドレスバー内の鍵マークは正常に表示にならず、状態を見ると暗号化されていない画像などが混在しているとのこと。

httpsのURLで当ブログのトップページをブラウザで表示して、右クリックからソース(html)を確認します。そうすると確かにhttpのURLで埋め込まれている画像が存在しているのを見つけました。

当ブログではトップページ内に表示している「プロフィール」は、WordPress管理画面メニュー内の「外観」→「ウィジェット」で表示させているのですが、そこで埋め込まれた画像ファイルがhttpのままでした。さくらのプラグインでもここは自動修正してくれなかったようです。

ただ、逆に言えばここ以外は全部綺麗に修正出来ているので、十分優秀です。

上記の画像ファイルのURLをhttpsに書き換えることで、無事ブラウザの鍵マークも正常な状態に変化し、サイト内の全ページ、全コンテンツのhttps化が完了しました。

 

まとめ

重要な作業の前にはちゃんとマニュアルや手順書を読もう

WordPressのプラグインはなるべくアップデートをしよう

WordPressのバックアップは細目に取りいつでも戻せるようにしておこう

それでは皆様、また次回もよろしくお願いいたします。