「このページは承認されていないソースからのスクリプトを読み込もうとしています」と言うエラーの解決方法について。

現時点で、このブログはSSL化されていませんが、先日作ったサイトは、ちょっとスケベ心をだしてSSL化しちゃいました。

そして、SSL化したサイトをオープンして、20日ほど過ぎたとことで、ちらっと目に入った、盾に「×」のマークが付いたアイコン。最近老眼が進んだ目で、よくよく見てみると、こんなヤツでした。

スクリーンショット_062317_014559_PM

このアイコンに恐る恐るマウスを近づけたところ、

無題クリップ_062317_014810_PM

「このページは承認されていないソースからのスクリプトを読み込もうとしています」だって。

せっかく、SSL化したのに、こんな指摘を頂いちゃたもんで、このイチャモンを解決しちゃいましょうかねってことで、軽めの尻を上げちゃいました。

調査開始!

今度は、恐る恐るこのアイコンをクリックしてみました。

無題クリップ_062317_015350_PM

すると、「このページは承認されていないソースからのスクリプトを読み込もうとしています」とエラーが表示されて、その下には「安全でないスクリプトを読み込む」と書かれたリンクと「詳しく見る」と書かれたリンクが書かれていました。

身の潔白を証明したい私は、迷うことなく「安全でないスクリプトを読み込む」と書かれたリンクをクリックしてみました。

スクリーンショット_062317_015731_PM

すると、URLの手前に「保護されていません」と赤いメッセージが表示されました。

次に、「詳しく見る」と書かれたリンクをクリックしてみました。

すると、こんねヘルプページに接続されちゃいまいた。

スクリーンショット_062317_020032_PM

まあ、くどくどと書かれていますが、要は、安全ではない「SSL化されていない」スクリプトがあるので、自分で調べて見ろと書かれています。

親切に、Google Chromeの「その他のツール」から「デベロッパーツール」を使って調べるように書かれてします。

スポンサードリンク

デベロッパーツールで調べてみたところ

デベロッパーツールで調べてみたところ、こんな感じでした。

スクリーンショット_062317_020733_PM

細かな字で、老眼泣かせですが、要は「http://www.google.co.jp/cse」の部分が「https」じゃないってことにお怒りのようです。って、おまえんとこのじゃねえのってツッコミたくなるところではありますが、さてどうしたもんか?

AdSense用広告コードのSSL対応の方法

「http://www.google.co.jp/cse」で、そのページのソースに検索を書けてみたところ、ブログのサイドメニューに貼り付けてある、AdSenseのカスタム検索ユニットの問題だと、あっさり分かっちゃいました。

ちなみに、検索ユニット以外のAdSenseのコードには、この「http:」の部分が書かれていないため、影響を受けていませんでした。

で、調べてみたところ、

スクリーンショット_062317_023223_PM

こんなページを発見しました。(見逃していました。)

HTTPS 経由でアクセスできるサイトでは、HTTP と HTTPS のコンテンツが混在しているとみなされて AdSense スクリプトがブロックされないように、古い AdSense 広告コードを変更する必要がある場合があります。AdSense 広告コードのスクリプトが「http://」で始まる場合は、「https://」に変更してください。

<script src=”https://pagead2.googlesyndication.com/pagead/show_ads.js”>
<script async src=”https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js”>

HTTPS バージョンの広告コードは HTTP ページでも使用できます。2 種類のバージョンを配信する必要はありません。

と、こんな風に書かれていました。

そこで、早速、検索ユニットのAdSenseのコードの「src=”http:」の部分を「src=”https:」に修正したろこと、無事にエラーが表示されなくなっちゃいました。

最後に

たまたま、自分のところは、AdSenseのコードの1箇所だけでしたが、他の方の場合は、違う部分で発生する可能性があるかも知れません。

そんな場合は、慌てず騒がず、「デベロッパーツール」で調べて1つ1つ潰して、Google先生に怒られないように気を付けましょう。