[AWS] CloudFront 캐싱 무효화 하는 방법
2024. 11. 8. 16:24ㆍServer/AWS
디자인팀에서 기존 s3에 올려놨던 이미지 파일을 변경해 달라고 요청이 들어왔다.
파일명은 같아서 기존 파일을 덮어씌우는 형태로 변경 후
'변경완료했습니다~' 하고 피드백을 드렸다.
왠걸? 주신 파일 그대로 변경했는데 변경이 안되었다고 연락이 왔고,
'엥 난 변경했는데??' 생각하면서 이슈 확인이 시작되었다..
다행히 30분 내로 원인 + 해결까지 완료
이 이슈를 통해서 알게 된 점
1. 같은 파일명으로 변경 후, 변경 전 파일이 캐싱되어 있으면 캐싱이 만료되기 전까지는 변경 전 파일을 바라보게 된다는 점
2. 네트워크 응답 헤더를 통해 cloudfront를 통해 캐싱되었는지 확인할 수 있는 태그가 있다는 점
3. cloudFront를 폴더별, 파일별로 무효화시키는 명령어가 있다는 점
해당 파일이 cloudFront에 의해 캐싱되어있는지 확인하는 방법
나는 curl 명령어를 통해 확인했음. (브라우저 개발자 도구의 이미지 객체로도 확인 가능함)
$ curl -I <cloudFront로 된 파일 경로>
x-cache 태그에 `Hit From cloudfront` 라고 되어있으면 cloudFront 캐싱되어 있는다는 의미이다.
cloudFront 캐싱 무효화 방식
AWS 로그인 후 안전하게 s3의 상단 clounShell(터미널 모양 아이콘) 클릭 후 접근한다.
해당 터미널에서 아래 명령어 실행한다.
무효화 하기
$ aws cloudfront create-invalidation --distribution-id <cloudFront id> --paths <파일 또는 폴더 경로>
- cloudFront id: AWS cloudFront의 배포 ID
- 단일 파일 날리고 싶을 경우: cloudFront Url을 제외한 파일 경로 작성
- 폴더 자체를 날리고 싶을 경우: /폴더명/* 작성
결과: status: inProgress이면 성공
무효화 확인하기
$ aws cloudfront list-invalidations --distribution-id <cloudFront id>
결과: status==Completed이면 성공
'Server > AWS' 카테고리의 다른 글
[AWS] Global Accelarator 적용 후기 (3) | 2024.11.01 |
---|---|
[AWS] Kinesis Data Streams 1분 요약 (개념, 예시, 그 외 비슷한 서비스 종류) (0) | 2024.04.07 |
[AWS] CloudFront 개념 뿌시기 (0) | 2023.07.14 |
[AWS Skill Builder] 유료 학습 과정 체험 (0) | 2023.07.06 |