CloudFrontを通すとUser-agentが“Amazon CloudFront”になってしまう問題

CloudFrontはCDNとして簡単に導入できるAWSの強力なサービスです。

強力なサービスですが、使い方のパターンや設定項目も多く、ネットワーク周りの知見が必要に感じます。

今回は、CloudFrontを前段に設置して、User-agentを確認すると、“Amazon CloudFront”になってしまう問題があり、記録しておきます。

スポンサーリンク

対応方法

結論として、CloudFrontの動作(Behavior)にてWhitelist Headers に User-agentを追加しておくことで、User-agentが引き継がれます。

ただし、この設定をしてしまうと、User-agentごとにキャッシュが別になり、キャッシュ効率が悪くなってしまう為、以下のヘッダーを指定する事が推奨されております。

通常、webサービス側のCSSでUser-agentの判定を行う事があります。そういった場合の為に、User-agentを全部CloudFrontでスルーしてしまうと、先に述べたようにキャッシュ効率が悪くなるので、上記の準備された4種のヘッダーを使う事で、4種まで絞られて効率化が図れます。

ただし、この4種より詳しく判断したい場合は、User-agentをWhitelist Headersに入れて判定するしかなさそうです。

CloudFrontまとめ記事

以下にまとめました。

【まとめ】Amazon CloudFront CDNサービス
AWSのCDNである強力なサービスCloudFrontを色々と使用してみました。そもそものCDNについての概要から、CloudFrontの...