Introduction
In this project I deployed a personal CV website using Amazon S3 for static hosting and Amazon CloudFront for global content delivery.
The objective was to understand:
- static website hosting
- content delivery networks
- secure public access
- performance optimization
- website scalability
- cloud architecture design
This project is especially useful for:
- portfolio deployment
- frontend hosting
- cloud architecture learning
- highly available environments
Services Used
The project uses the following AWS services:
- Amazon S3
- Amazon CloudFront
- Amazon Route 53 (Optional)
- AWS Certificate Manager (Optional)
- Amazon CloudWatch (Optional)
- AWS WAF (Optional)
- AWS Shield (Optional)
Architecture
The architecture consists of:
User
↓
CloudFront
↓
S3 Static Website
Optional services:
Route53
↓
CloudFront
↓
S3
Additional security and monitoring can be integrated using CloudWatch, WAF and Shield.
Configuration
The solution was configured using:
- S3 static hosting
- CloudFront distribution
- Origin Access Control (OAC)
- bucket policies
- cache optimization
Additional concepts explored:
- DNS management
- HTTPS certificates
- monitoring
- DDoS protection
Important Considerations
Some important architecture concepts:
S3 bucket should not be publicly exposed
Best practices:
- use CloudFront OAC
- enable HTTPS
- monitor traffic
- protect against attacks
- use DNS abstraction
Optional improvements:
- Route 53
- CloudWatch
- WAF
- Shield
Lessons Learned
This project helped reinforce:
- static website deployment
- CDN concepts
- content caching
- web security
- scalable architectures
- AWS managed services
References
Final Result
Below is the final deployed architecture.
Output
Project Code
You can find the Terraform code used in this project in the following GitHub directory.



Comments