Amazon CloudFront Announces Support for Cookies and Price Classes

Posted on: Sep 4, 2012

We are very excited to announce three new features for Amazon CloudFront, the easy-to-use content delivery service that enables you to deliver static, dynamic and streaming content.

First, Amazon CloudFront now supports delivery of dynamic content that is customized or personalized using HTTP cookies. To use this feature, you specify whether you want Amazon CloudFront to forward some or all of your cookies to your custom origin server. Amazon CloudFront then considers the forwarded cookie values when identifying a unique object in its cache. This way, your end users get both the benefit of content that is personalized just for them with a cookie and the performance benefits of Amazon CloudFront.

Second, starting today you have a new option to lower the prices you pay to deliver content out of Amazon CloudFront. By default, Amazon CloudFront minimizes end user latency by delivering content from its entire global network of edge locations. However, because we charge more where our costs are higher, this means that you pay more to deliver your content with low latency to end-users in some locations. While this is the right choice for most Amazon CloudFront customers, we heard that for some use cases cost is a more important concern than latency. So, starting today we’re giving you the option to exclude the more expensive Amazon CloudFront locations from your distributions.

By default, nothing changes: your existing distributions will continue to use the entire network of edge locations. However, if you wish, you can use the AWS Management Console or the Amazon CloudFront API to specify whether you want to deliver content only through a subset of edge locations (we call each subset a price class) where our prices are lower. Note, if you select a price class that does not include all locations, you’ll pay less, but your end users who would normally be served by the locations you exclude will experience higher latency than if your content was being served from all Amazon CloudFront locations.

Finally, we have added three new fields to your Amazon CloudFront access logs:

  • The result type of each HTTP(s) request (for example, cache hit/miss/error).
  • The cookie header in the request (if any). Logging of this field is optional.
  • The value of X-Amz-Cf-Id for that request. This is an encrypted string that uniquely identifies a request to help AWS troubleshoot/debug any issues.

To learn more about Amazon CloudFront and these new features, please visit the detail page for the service.