CNAME
- Maps a hostname to any other hostname (can be outside AWS).
- Cannot be used at the zone apex (
mydomain.com
).
- Only valid for non-root subdomains (
app.mydomain.com
).
Alias
- Maps a hostname to AWS resources (ELB, CloudFront, S3 static site, API Gateway, etc.).
- Works for root (
mydomain.com
) and non-root (app.mydomain.com
) domains.
- Free in Route 53 (no extra DNS query cost).
- Supports Route 53 native health checks.
💡 Exam tip:
If you see a question about mapping a root domain directly to an ELB or CloudFront → use Alias, not CNAME.