| 단계 | 요청 대상 | 예시 | 설명 | HTTPS 필요 여부 |
|---|---|---|---|---|
| ① 정적 리소스 로드 | https://www.heeun-test.com → CloudFront → S3 | JS, CSS, HTML 등 | React 앱을 브라우저가 처음 요청 | ✅ CloudFront에 SSL 필수 |
| ② API 요청 | https://api.heeun-test.com → Nginx → Spring | fetch(), axios() | React 앱이 실행되면서 API 호출 | ✅ Nginx에도 SSL 필수 |
🧑💻 브라우저 사용자
│
├─▶ https://www.heeun-test.com (CloudFront + SSL)
│ └─▶ S3에서 정적 리소스 제공 (React 앱)
│
└─▶ fetch('https://api.heeun-test.com/api/login') ← 이건 Nginx로 감
└─▶ Nginx (SSL 적용됨)
└─▶ Spring Boot (8080)
🔹 CloudFront는 정적 자산의 HTTPS 처리자
🔹 Nginx는 API 요청의 HTTPS 처리자
🔹 브라우저는 직접 요청하는 모든 대상이 HTTPS여야만 안심하고 통신합니다
즉, 두 구간 모두에서 브라우저의 보안 요구사항을 충족시키려면
👉 CloudFront와 Nginx 둘 다 SSL 인증서를 갖추는 것이 필수입니다.