schedule2019-07-30

CloudFrontが期待した動作をしないときに確認する症例集

AWSのCloudFrontが期待した動作をしないときに確認するポイントを症例別にまとめます。 他の方も記事にされているため、この記事はリンク集が主です。 いくつかの私の経験したものは詳しめに書いていきます。

※書きかけなのでまだ2つです。m(__)m

クエリ文字列が届かない

確認する設定:Query String Forwarding and Caching

デフォルトではクエリ文字列を無視したキャッシュを行うNone (Improves Caching)が設定されています。 こちらは、リクエストを処理できる可能性を高くしてオリジンの負荷を下げることができますが、サーバ側にクエリ文字列が届かない原因となります。

全てのクエリ文字列を渡す場合はForward all, cache based on allとする必要があります。

参考:クエリ文字列の転送とキャッシュ - 開発者ガイド

POSTリクエストで403 Forbidden

確認する設定:Allowed HTTP Methods

Allowed HTTP MethodsGET, HEADになっているとPOST、DELETEなどのメソッドは受け付けません。 GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETEを選びPOST、DELETEなどのメソッドをスルーさせます。

参考