CloudFront ディストリビューションが「X-Cache:Miss from CloudFront」というレスポンスを返す理由は何ですか?

最終更新日 : 2019 年 4 月 3 日

CloudFront ディストリビューションとオリジンがオブジェクトにキャッシュするように設定しましたが、ディストリビューションからは「X-Cache:Miss from CloudFront」レスポンスが返されます。原因は何ですか? このレスポンスを防ぐためには、どうすれば良いですか?

解決方法

「X-Cache:Miss from CloudFront」レスポンスの原因を診断してトラブルシューティングするには、次の点を確認してください。

リクエストを受信しているのは、どのエッジロケーションですか?

Amazon CloudFront を介してオブジェクトがリクエストされた後、そのオブジェクトはリクエストを受信したエッジロケーションにのみキャッシュされます。それ以降、別のエッジロケーションに対してリクエストが行われた場合、他のエッジロケーションにはキャッシュされたオブジェクトバージョンがないため、「X-Cache:Miss from CloudFront」というレスポンスが返されます。

レスポンスが 1 つのエッジロケーションから来ているのか、複数のエッジロケーションから来ているのかを判断するには、同じクライアントから同じオブジェクトに複数のリクエストを送信します。次に、接続が確立されている IP アドレスを確認します。IP アドレスに対して逆引き DNS ルックアップを実行して、リクエストがどのエッジロケーションに向かうのかを判断します。

オブジェクトのリクエスト頻度はどのくらいですか?

エッジロケーションのオブジェクトが頻繁にリクエストされない場合、CloudFront はその有効期限が切れる前にオブジェクトを削除する可能性があります。CloudFront がオブジェクトを削除するタイミングの詳細については、「コンテンツが Edge キャッシュに保持される期間の管理 (有効期限)」を参照してください。

「X-Cache:Miss from CloudFront」というレスポンスが断続的に表示される場合は、リクエストの頻度が低いために CloudFront がオブジェクトを削除している可能性があります。

CloudFront ディストリビューションは、ヘッダー、クッキー、またはクエリ文字列のパラメータを転送するように設定されていますか?

ディストリビューションがヘッダー、クッキー、またはクエリ文字列のパラメータを転送するように設定されている場合、ディストリビューションはそれらのパラメータに基づいてリクエストをキャッシュします。パラメータは、キャッシュから処理されるリクエストの数を減らします。

たとえば、オブジェクトにアクセスする 2 つのリクエストがクエリ文字列のパラメータで異なる値を持つ場合、2 番目のリクエストはキャッシュから処理されません。2 番目のリクエストは「X-Cache:Miss from CloudFront」レスポンスを返します。

転送されるヘッダー、クッキー、またはクエリ文字列のパラメータがレスポンスを引き起こしているかどうかを判断するには、これらのパラメータをオリジンに転送しないように CloudFront ディストリビューションを設定してください。その後に、問題が解決しないかどうか確認して下さい。

ディストリビューションがそれらのパラメータを転送しなくなった後で問題が解決した場合は、少なくとも 1 つのパラメータがレスポンスを引き起こしています。幅広いパラメータを転送するように CloudFront を設定するのではなく、CloudFront からオリジンに転送したい特定のパラメータのみをホワイトリストで指定することを検討してください。

レスポンスがブラウザのキャッシュに保存されていますか?

リクエストの結果が「X-Cache:Miss from CloudFront」レスポンスになった後は、ブラウザのキャッシュに保存されるため、ブラウザはその後のリクエストに対して同じレスポンスを提供している可能性があります。

レスポンスがブラウザのキャッシュに保存されているかどうかを確認するには、ブラウザのキャッシュを消去してから同じオブジェクトに対して新しいリクエストを行います。

注: ブラウザがオブジェクトをキャッシュする期間を決めるには、オブジェクトに Cache-Control ヘッダーまたは Expires ヘッダーが設定されているかどうかを確認してください。


このページは役に立ちましたか?

改善できることはありますか?


さらにサポートが必要な場合