WordPressで動かしているサイトをCloudFlareでhttps化したのでメモ。
- CloudFlareでSSL(with SPDY)をFlexibleに設定
- WordPressのプラグイン「CloudFlare」をインストール
- WordPressのプラグイン「CloudFlare Flexible SSL」をインストール
- WordPress アドレス (URL)、サイトアドレス (URL)をhttpsに変更
- CloudFlareでHTTP Strict Transport Security (HSTS)を設定
- preload listに登録
- Google Search Consoleにhttps版を追加
- 内部リンクをhttpsに変更
- amazletの画像を変更
- ShareHtmlをEmbedlyに変更
- 参考サイト
CloudFlareでSSL(with SPDY)をFlexibleに設定
まずはこれをやらないとはじまらない。
CloudFlareでHTTP Strict Transport Security (HSTS)を設定
HTTP Strict Transport Security(しばしば HSTS と略されます)は、HTTP の代わりに HTTPS を用いて通信を行うよう、Web サイトからブラウザにに伝達するためのセキュリティ機能です。
HTTP Strict Transport Security - Web セキュリティ | MDN
僕の設定。
Status: On Max-Age: 6 months (recommended) Include subdomains: Off Preload: Off No-sniff: Off
Include subdomainsをOnにしちゃうと、サブドメインにも適用されてしまう。僕は一回やってしまって当ブログも強制的にhttpsになって見られなくなってしまった。Offにして、本体サイトを1回見に行ってから、戻ってきたら、ちゃんと見られるようになった。
preload listに登録
Google では ドメインを HSTS Pre-loaded List に登録するサービス を行っています。記載された手順に従ってドメインを登録すれば、今後ブラウザとそのドメインとの間に安全でない通信は起こらなくなります。
HTTP Strict Transport Security - Web セキュリティ | MDN
Google Search Consoleにhttps版を追加
僕はhttpとhttps両方追加している。このやり方で合っているかは不明。下手するとランキングが下がるかも?httpからhttpsに301リダイレクトもしていないし。とりあえず様子を見る。
内部リンクをhttpsに変更
ある程度は「CloudFlare」プラグインでやってくれてるっぽいけど、記事に書いている部分は変更する必要がある。Search Regexを使った。
amazletの画像を変更
amazletの画像が表示されなくなったので、URLを変更。下記サイトを参考にさせてもらった。
じゃあ、amazlet などのリンク生成ツールは SSL 化した Web サイトに商品リンクを設置する際には使えないの? と思うかもしれませんが、アソシエイト・ツールバーのソースコードを https:// に書き換えた状態でリクエストされる画像の URL を調べてみたところ、下記のようにドメインを変えれば、HTTPS で画像が取得できるみたいです。
当 Blog を SSL 対応させたので手順や修正が必要になった点などをまとめ | WWW WATCH
Search Regexで置換した。
ShareHtmlをEmbedlyに変更
過去記事や外部サイトの紹介にShareHtmlを使っていたけど、画像が表示されなくなったので、Embedlyに変更した。embed.ly
Search Regexで検索して手作業で変更。これが一番時間かかった。
参考サイト
設定に当たって、下記サイトを参考にさせていただいた。ありがとうございます。
*1:僕はなってDBを直接いじるはめになった