LoginSignup
3
0

More than 1 year has passed since last update.

CloudFrontのカスタムエラーレスポンスではカスタムエラーページを200で返す必要があった

Posted at

結論

CloudFrontのカスタムエラーレスポンスを使おうと思って設定をしたが、意図したとおりに動かなかった。

結論、カスタムエラーページに設定するページは正常なステータスコードで返す必要があることがわかった。

image.png
(オリジンサーバーからの404レスポンスをCloudFrontから503でカスタムエラーページを返す例)

やっていたこと

503を返すページをつくりたくて、とりあえず既にに用意している404ページを流用してCloudFrontのカスタムエラーレスポンスで503に変えて配信しようと思っていた。

イメージは以下の図。(これは意図したとおりに動かない)

image.png

だが、何度設定しても意図したとおりに動かず、CloudFrontから404が帰ってきていた。

image.png

試しに200を返すページをカスタムエラーページに設定したところ動いた。

image.png

ドキュメントを読むと、

https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/GeneratingCustomErrorResponses.html
HTTP ステータスコードの代わりにカスタムエラーページを返すように CloudFront を構成していても、カスタムエラーページが利用できない場合には、CloudFront は、カスタムエラーページを持つオリジンから受信したステータスコードをビューワーに返します。

とあり、カスタムエラーページからのレスポンスのステータスコードが正常でなければ、そのステータスコードをそのまま返すようになっている様。

そのため、カスタムエラーページとして設定するページは正常なステータスコードを返す必要があることがわかった。

Refs

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0