無料SSLのCloudFlareでHTTPS↔HTTP転送を設定する方法
プログラミング#CloudFlare
suin
・
2015年11月12日 投稿
CloudFlareは無料で使えるCDN(Content Delivery Network)でウェブサイトの表示を高速化することができるサービスだ。加えて、SSLやDDoS攻撃の対策まで無料でやってくれる太っ腹。同サービスはアメリカの会社だが、CDNのエッジは世界に64箇所以上あり、日本には東京と大阪にエッジが存在するので、国内向けのウェブサイトにも有効だ。今回は、CloudFlareで無料SSLを使った時に行う、URLをHTTPからHTTPSへ転送する設定、またその逆の転送を行う方法を紹介する。
> CloudFlareのUniversal SSLCloudFlareのUniversal SSL
通常SSLというとSSL証明書を発行するのに安くて年間数百円の出費が発生したり、サーバにインストールする手間と専門知識が必要だが、CloudFlareはUniversal SSL™という無料サービスを提供しており、しかもクリックひとつでサイトをSSL対応することができる。ただし、同サービスはSSLの拡張規格であるServer Name Indication (SNI)を使っているため、古いブラウザが対応していないので注意は必要だ。
> すべてのHTTPリクエストをHTTPSへ転送する方法すべてのHTTPリクエストをHTTPSへ転送する方法
> Page Rulesページを開くPage Rulesページを開く
> "Add new rule"から新しいルールを追加する"Add new rule"から新しいルールを追加する
- 「URL pattern」に
*domain.com/*
と入力 - 「Always uses https」を「ON」にする
> 最後に"Add rule"を押して適用最後に"Add rule"を押して適用
押すとすぐに適用される。
> すべてのHTTPSリクエストをHTTPへ転送する方法すべてのHTTPSリクエストをHTTPへ転送する方法
> Page Rulesページを開くPage Rulesページを開く
> "Add new rule"から新しいルールを追加する"Add new rule"から新しいルールを追加する
- 「URL pattern」に
https://*domain.com/*
と入力 - 「Forwarding」を「ON」にし、転送先のURLに
http://$1domain.com/$2
と入力 - 「Forwarding type」は一時的な転送であれば302に、今後HTTPSを使う予定がなければ301にする
> 最後に"Add rule"を押して適用最後に"Add rule"を押して適用
押すとすぐに適用される。