Failed to fetch - Mixed Content
Mixed Content(HTTPS→HTTP)によるFailed to fetchエラーの原因と解決策
概要
HTTPSページからHTTPリソースへのリクエストがブロックされている場合に発生します。ブラウザのセキュリティ機能により、セキュアなページから非セキュアなリソースへのアクセスが制限されます。
この原因かどうかの確認方法
Consoleに以下のようなメッセージが出る場合、Mixed Contentが原因です:
Mixed Content: The page at 'https://...' was loaded over HTTPS,
but requested an insecure resource 'http://...'
解決策
1. HTTPSに変更する(推奨)
| |
2. プロトコル相対URLを使用
| |
3. 環境変数でAPIのURLを管理
| |
4. APIサーバーをHTTPS化
Let’s Encryptなどを使用して、APIサーバーにSSL証明書を設定してください。
| |
よくある間違い
- 開発環境でHTTPを使い、本番環境でHTTPSに変更し忘れる
- 設定ファイルにハードコードされたHTTP URLが残っている
- サードパーティAPIがHTTPSに対応していないのにHTTPSページから呼び出す
まだ解決しない場合
→ 診断ハブに戻る
関連エラー
関連エラー
JavaScript の他のエラー
この記事は役に立ちましたか?