最近このセルティスラボのサイトも SSL 対応したのですが、過去の投稿記事内で自サイトの記事をブログカード等で紹介しているとリンクや画像に http から始まるURLアドレスが含まれているので https へ書き換えないとミックスドコンテンツエラーが多発します
そこで、SSL化対応の手順を紹介する記事では Serch Regex というプラグインでデータベース内の URLアドレスを書き換える方法がよく紹介されているのですが、もっとお手軽な方法を紹介します
サイトを http から https へSSL化するには
最近は、Let’s Encrypt のような無料で使用できる SSLサーバー証明書 のおかげで多くのサイトがSSL化されています
私の利用しているエックスサーバーでもこの Let’s Encrypt が簡単に利用できるようになっていますが、それでもめんどくさいと思い放置していたのですが、最近ではブラウザに保護されていないとか警告が表示されるようになったりで重い腰をあげてSSL化しました
SSL化の手順は多くのサイトで紹介されており、私も下記記事などを参考に行いました
WordPressをhttpからhttpsにSSL化した全手順まとめ(エックスサーバー環境)
エックスサーバーでWordPressブログをHTTPS(常時SSL)化する手順 – Naifix
手順が詳細に書かれているので、このとおりにやっていけば SSL化できるのですが、その中の内部リンクや画像のURLアドレスの書き換え処理の部分をもっとお手軽に済ませる方法を紹介します
Yasakani Cache プラグインを使いURLアドレスを置き換え
SSL化対応の手順を紹介する記事では Serch Regex というプラグインを使いデータベース内にある URLアドレスを書き換える方法がよく紹介されているのですが、データベース内のデータを書き換えるので慎重な作業が必要になってきます
そこで、データベース内のサイトURLアドレスの置き換えをせずに、ページデータの出力時にページ内のURL置き換えを行えればいいのではと思い、私の開発している Yasakani Cache プラグインのユーティリティ機能として実装しました
Yasakani Cache に関しては下記ページを参照してください
WordPress Plugin : YASAKANI Cache
なんで置き換えにキャッシュプラグインが? と疑問をお持ちかもしれませんが、キャッシュプラグインに実装するのは意外に理にかなっています。
キャッシュプラグインというのは、出力するページデータをキャッシュして同じページの要求があれば、キャッシュされたデータを出力して高速化を図っているのですが、キャッシュデータとして保存する時にURL置換処理をすれば、キャッシュの有効期限内は置換済みのキャッシュデータが使われるので、実質的にURL置換にかかる負荷を無視できるということです
使い方は簡単で、例えば http://xxxx.com というサイトを https://xxxx.com へ変更する場合は、検索するURLアドレスに http://xxxx.com を設定して、置き換えURLアドレスに https://xxxx.com と設定すれば OK です
※データベース内のURLデータを書き換えているわけではありませんので、このキャッシュプラグインを停止すると元の http からのアドレスが出力されます
このURL置き換え機能で内部リンクや画像の https 置き換え処理を行っただけでは、全てのミックスドコンテンツエラーが解消できるわけではありません。外部サイトの画像や広告等で http アドレスのものがあればエラーとなりますので、その部分の修正は手作業で行う必要があります
以上
Yasakani Cache プラグインを使った内部リンクや画像の手軽な置換方法を紹介しました