Secure Pages Include Mixed Content (Including Scripts)
「Secure Pages Include Mixed Content (Including Scripts)」というアラートは、HTTPSページにHTTPコンテンツが含まれている場合に発生します。これにはスクリプト、スタイルシート、画像などのリソースが含まれます。HTTPコンテンツは暗号化されておらず、セキュリティリスクをもたらす可能性があります。このアラートを解消するための具体的な手段を以下に示します。
1. HTTPSのみを使用する
全てのリソースをHTTPSで提供
- HTTPSプロトコルを使用:全ての外部および内部リソースをHTTPSで提供します。HTTPリンクをHTTPSリンクに変更します。
<!-- 変更前 -->
<script src="http://example.com/script.js"></script>
<link rel="stylesheet" href="http://example.com/style.css">
<!-- 変更後 -->
<script src="https://example.com/script.js"></script>
<link rel="stylesheet" href="https://example.com/style.css">
2. WordPress設定の変更
WordPressアドレスとサイトアドレスの更新
-
HTTPSに設定:WordPressの管理画面で「設定」→「一般」から、WordPressアドレス(URL)とサイトアドレス(URL)を
https://
に変更します。
3. データベースのURLを更新
URLの一括置換
-
データベース内のURLを更新:
http://
を含むURLをhttps://
に一括置換します。これは、データベース内の古いHTTPリンクをHTTPSに更新するために便利です。
wp-cliの使用例
wp search-replace 'http://example.com' 'https://example.com' --all-tables
4. プラグインの利用
Mixed Content Fixerプラグイン
- プラグインの導入:Mixed Contentを修正するためのプラグイン(例:Really Simple SSL)を導入し、混在コンテンツをHTTPSに変更します。
5. テーマおよびプラグインコードの修正
テーマとプラグインのコード確認
- コード内のHTTPリンクを修正:テーマファイルやプラグインファイル内にハードコードされたHTTPリンクを探してHTTPSに修正します。
// 変更前
wp_enqueue_script('custom-script', 'http://example.com/js/script.js');
// 変更後
wp_enqueue_script('custom-script', 'https://example.com/js/script.js');
6. Content Security Policy (CSP) の設定
CSPヘッダーの追加
- CSPを設定:Content Security Policy (CSP)ヘッダーを使用して、HTTPS以外のリソースが読み込まれないようにします。
Apacheの例
Header set Content-Security-Policy "default-src 'self' https:; script-src 'self' https:; style-src 'self' https:;"
Nginxの例
add_header Content-Security-Policy "default-src 'self' https:; script-src 'self' https:; style-src 'self' https:;";
7. ブラウザコンソールのチェック
開発者ツールの利用
- ブラウザの開発者ツールを使用:ブラウザの開発者ツールのコンソールを使用して、どのリソースが混在コンテンツとして読み込まれているかを特定します。これにより、修正が必要なリンクを見つけることができます。
8. CDN設定の確認
CDNのプロトコル確認
-
CDNの設定:CDNを使用している場合、CDNがHTTPSで提供されていることを確認します。CDNのURLも
https://
に変更します。
まとめ
「Secure Pages Include Mixed Content (Including Scripts)」というアラートを解消するためには、以下の手段を講じることが重要です:
- 全てのリソースをHTTPSで提供する。
- WordPressの設定でHTTPSを使用する。
- データベース内のURLをHTTPSに更新する。
- Mixed Content Fixerプラグインを使用する。
- テーマやプラグインのコードを修正してHTTPリンクをHTTPSに変更する。
- Content Security Policy (CSP)を設定する。
- ブラウザの開発者ツールを使用して混在コンテンツを特定する。
- CDNの設定をHTTPSに変更する。
これらの対策を講じることで、混在コンテンツの問題を解消し、Webサイトのセキュリティを向上させることができます。