Amazon CloudFront can serve as a content delivery network (CDN) not only for static files from S3 but also for custom HTTP backends, including EC2 instances and Application Load Balancers (ALB). This setup improves performance and security while ensuring a global, low-latency experience for users.


Pattern 1: CloudFront with EC2 Instance (Public Instance)

If you have an HTTP backend running on an EC2 instance, CloudFront can act as a proxy, distributing requests through its edge locations.

Setup Requirements

  1. Public EC2 Instance:
  2. Security Group Configuration:
  3. How it Works:

📌 Key Limitation: The EC2 instance must remain public, which might pose a security risk.


Pattern 2: CloudFront with an Application Load Balancer (ALB)

A more secure approach is to use CloudFront with an ALB, allowing backend EC2 instances to remain private.

Setup Requirements

  1. Public ALB, Private EC2 Instances:
  2. Security Group Configuration:
  3. How it Works:

Key Benefit: