AWS CloudFront 무효화 가이드
Source: Dev.to

정적 프론트엔드 웹사이트는 성장함에 따라 지속적인 업데이트가 필요합니다. 일반적으로 정적 웹 콘텐츠는 Amazon S3 버킷에 업로드된 파일을 통해 제공되며 CloudFront를 통해 접근됩니다. 새로운 콘텐츠를 업로드했음에도 불구하고 사용자가 여전히 이전 버전의 페이지를 보는 경우가 흔히 발생합니다. 이는 CloudFront가 콘텐츠를 캐시하고 있기 때문입니다.
이를 해결하려면 CloudFront 무효화(invalidation)를 수행해야 합니다. 이 가이드는 단계별로 과정을 안내하여 청중이 항상 최신 버전의 콘텐츠를 볼 수 있도록 합니다.
What is S3 Object Invalidation?
Amazon S3에 파일을 저장하고 Amazon CloudFront를 통해 전달할 때, CloudFront는 전 세계 엣지 로케이션에 파일 복사본을 캐시합니다. 이는 데이터가 사용자와 물리적으로 가까워져 전달 속도가 빨라지기 때문입니다.
CloudFront는 이러한 캐시된 복사본을 만료될 때까지(보통 24시간 이상) 유지합니다. S3에 파일의 새 버전을 업로드해도 CloudFront는 변경 사실을 알지 못합니다. 무효화는 CloudFront에게 캐시된 복사본을 삭제하고 즉시 S3에서 새 버전을 가져오도록 지시합니다.
Step‑by‑Step: How to Invalidate a File
-
Access the CloudFront Console
AWS Management Console에 로그인하고 검색창에 “CloudFront”를 입력한 뒤 서비스를 선택합니다. -
Select Your Distribution
S3 버킷을 웹에 연결하는 배포(distribution)를 찾아 해당 Distribution ID를 클릭합니다. -
Create the Invalidation
- Invalidations 탭을 클릭합니다.
- 주황색 Create invalidation 버튼을 누릅니다.
-
Define the Object Path
“Object paths” 입력란에 삭제하려는 파일의 경로를 지정합니다.
Important: 전체 URL을 붙여넣지 말고 도메인 이름 뒤의 경로만 입력합니다.예시:
https://example.com/restaurant/dinner.pdf파일의 경우 다음과 같이 입력합니다:/restaurant/dinner.pdf페이지 하단의 Create invalidation 버튼을 클릭합니다.
Key Points to Remember
- Leading Slash: 경로는 항상 슬래시(
/)로 시작해야 합니다. - Wildcards: 전체 폴더를 삭제하려면 와일드카드(*)를 사용합니다. 예:
/restaurant/*. - Timing: 무효화는 전 세계적으로 처리되는 데 보통 1~3분 정도 걸립니다. 상태가 “In Progress”에서 “Completed”로 바뀌면 새 파일이 실시간으로 적용됩니다.
Additional Resources
웹 캐싱 및 고급 무효화 패턴에 대한 자세한 기술 내용은 공식 AWS 문서를 참고하세요: