SSL化に付き物なのがMixed Contentという、いわゆるページ内にhttpの読み込み(ハイパーリンク以外)があると、ブラウザの鍵マークが表示されない。
日本語で言うと混在コンテンツとか混合コンテンツとか言われてますが、意味は同じです。
httpsで閲覧できているということは、そのドメインの証明書は問題ないのですが、それ以外のファイルでhttpが含まれるため実質的には暗号化通信ができていないことになります。
かといって、鍵マークがついてない状態だからと言って通信が傍受されてしまうのか?というと答えは「NO」です。
結構誤解されがちなのですが、httpsで表示されている以上、暗号化通信は行われているので、仮にhttpで画像が読み込まれていても、ブラウザが気を利かせて画像を表示してくれているのです。
ただ、JavaScriptをhttpで読み込んでいる場合はスクリプトは実行されません。よくあるのはjQueryなんかをhttpで読み込んでいてjQueryで動かす要素が動かないなんてことが良くあります。
JavaScriptは悪意があればどんな情報も抜き取れるので、ブラウザは読み込まない(実行されない)ようにしているのだと思います。
とは言っても、鍵マークが表示されない以上。「保護されていません」という警告は変わらず出るので、何も知らない人にとっての不安は取り除けないでしょう。
じゃあ、自分のサイトは1000ページ以上あって、正直全て鍵マークが出ているか確認できてないよ!という方もいると思います。
私も多くのSSL案件をこなす中で、手作業で1ページずつ確認するのが非常に非効率に感じていました。
そんなMixed Contentを確認してくれるツールをご紹介します。
目次
その名も「HTTPS Checker」!!
なんてわかりやすいアプリ名なことでしょう!
それはさておき、このツールは英語版のみなので読めない人はGoogle翻訳とかで頑張ってください。(いつか日本語化を私がします笑)
日本で紹介されている記事は1件ぐらいしか見当たらなかったので新しいツールかと思います。
機能制限はありますが一応無料で使えます。
使い方もシンプルなので、多分困ることはないと思います。
使い方
起動したら、チェックしたいURLを入力します。基本的にはトップページで問題ないです。全てのページをチェックしてくれます。
Modeは「Mixed Content Only」を選んでください。
次に「Run」をクリックすると自動的にチェックが始まります。
私のサイトでは3件のMixed Contentが見つかりました。
上の部分だけ翻訳してみました。
3 Active Mixed/Insecure Content Found(+1 Duplicates)
→3つのアクティブな混在/不安定なコンテンツが見つかりました(+1重複)
1 Passive Mixed/Insecure Content Found(+1 Duplicates)
→1パッシブな混在/不安定なコンテンツが見つかりました(+1重複)
No Insecure Forms Found
→不安定なフォームは見つかりません
SSL Certicate is Valid
→SSL証明書が有効です
Duplicate Issues have been hidden on this report
→重複する問題がこのレポートで非表示になっています
※おそらく有料版にアップブレードするとこの部分も表示されるのだと思います。
ちなみにアクティブ混在とパッシブ混在の違いですが、データ転送用のデータコネクションを確立する方向の違いで、
- アクティブ混在:サーバからクライアントに対してデータコネクション確立する際の混在
- パッシブ混在:クライアントからサーバに対してコネクション確立する際の混在
ユーザーがサイトを閲覧する=アクティブ混在。ユーザーがサイトへデータを送信する(フォームとか)=パッシブ混在になります。
サーバーに対してコネクションを確立する過程でhttpが存在するとこのエラーが起きます。
今騒がれている鍵マーク問題については、アクティブ混在さえ対応していれば基本的には問題ないと考えます。
私のサイトの場合はJavaScriptの中でhttpリクエストがあるようですね。
これはJSライブラリを使っているので、手作業で変える必要がありそうです。
有料版の機能と料金は?
有料版は「PRO」「PREMIUM」「EXTERPRISE」の3つに分かれているようです。
混在コンテンツのチェックをしたいだけなら、「Max pages crawled per scan」がチェックできるページ数なので、500ページ以上ある場合は有料版を検討してみても良いと思います。
大規模サイトでない限りは無料で十分かと思います。「EXTERPRISE」は月々12,000円弱かかるので、私でも手が出せないです。
最近、1000ページ単位の依頼も増えてきたので、「PRO」ぐらいなら試しにやってみようかなと思います。
SSL化後も知らない間に混在コンテンツを作ってしまっている事もあるので、定期的にチェックしてみてはいかがでしょうか?