混合コンテンツエラー: HTTPS ページが HTTP リソースを読み込む
· CSR.plus チーム

- •ブラウザは HTTPS ページ上の HTTP リソースをブロックし、ダウングレード攻撃からページを守ります。
- •ブラウザコンソールでブロックされた URL をすべて確認し、相対 URL・プロトコル相対 URL・CSP アップグレードヘッダーで修正します。
- •Content Security Policy の upgrade-insecure-requests はコードを変えずに多くのページを修正できます。
混合コンテンツの仕組み
HTTPS で配信されるページはセキュアコンテキストを継承します。平文 HTTP で読み込まれるサブリソース(画像、CSS、スクリプト、フォント、iframe、fetch/XHR)はそのコンテキストを壊します。ブラウザは「アクティブ」な混合コンテンツ(スクリプト、iframe、fetch)を完全にブロックし、画像や音声もブロックする方向に強化されています。コンソールはブロックされた URL を明確なメッセージ付きで記録します。
すべての出現箇所を見つける
DevTools > コンソールを開き「Mixed Content」でフィルタし、ブロックされた URL をコピーします。次にコードベース内の該当ホストへの http:// 参照を検索します。最も堅牢な修正はプロトコル相対 URL(//cdn.example.com/x.js)または単純な相対パスを使い、ブラウザに正しいスキームを自動選択させることです。
CSP の一行修正
Content-Security-Policy: upgrade-insecure-requests ヘッダーを追加すると、ブラウザは http:// サブリソースをブロックせず https:// に書き換えます。多くの静的ページで機能します。HTTPS を提供しないハードコード済みの http:// API エンドポイントはコードを変更する必要があります — クライアント側の回避策はありません。
FAQ
他のブラウザでは動くのに自サイトだけ壊れて見えるのはなぜ?
古いブラウザや緩いポリシーは混合コンテンツを静かに読み込むことがあります。現代のブラウザはブロックするため挙動が異なります。
HSTS は混合コンテンツを修正しますか?
いいえ。HSTS は HTTP ページの読み込みを防ぎますが、埋め込みの http:// リソースは書き換えません。upgrade-insecure-requests を使うか URL を修正してください。
UptimeRobot
SSL と稼働状況を無料で監視
UptimeRobot が証明書とエンドポイントを 24 時間 365 日監視——無料プランで 50 モニター。
アフィリエイトリンク——追加費用なしで当サイトが手数料を受け取ることがあります。
無料の SSL/TLS ツール
数秒で証明書を検証・検査。