AWS Cloudfront를 통해 tar.gz 파일을 제공하시겠습니까?

AWS Cloudfront를 통해 tar.gz 파일을 제공하시겠습니까?

내 웹 사이트 자산이 있는 S3 버킷을 깔끔하게 유지하고 싶습니다.

현재 CI/CD 파이프라인의 일부로 모든 자산을 S3에 업로드하고 있습니다. 생성된 파일의 이름이 항상 동일하지 않기 때문에 약간 지저분해져서 오래된 파일이 많이 생겼습니다. 빠른 수정은 새 릴리스가 나올 때마다 s3 버킷을 비우는 것이지만 저는 다른 것에 대해 생각하고 있습니다.

이 명령을 실행하면 dist 폴더에서 하나의 파일을 생성할 수 있습니다.

tar -zcvf MyWebApp.tar.gz dist

이 tar.gz 파일만 내 S3 버킷에 업로드하여 새 릴리스가 나올 때마다 교체하고 cloudfront를 통해 제공할 수 있습니까?

답변1

CloudFront는 원하는 작업을 수행할 수 없습니다. 개별 파일을 제공해야 합니다. CloudFront는 요청을 받아 S3에서 파일을 제공합니다. 그것은 당신에게 무엇이든 untar를 제공하지 않습니다.

자산 파이프라인이 만료될 때까지 자산 서버에 남겨질 수 있는 고유한 자산 파일(해시된 이름 포함)을 생성하는 것은 일반적입니다. 원칙적으로 새 자산을 생성하면 언제든지 이전 자산을 폐기할 수 있습니다. 클라이언트가 캐시된 콘텐츠를 계속 사용할 수 있도록 자산 파이프라인은 변경되지 않은 콘텐츠에 대해 새 이름을 생성해서는 안 됩니다.

따라서 요약하면 자산을 업데이트하는 경우 S3에서 더 이상 필요하지 않은 자산을 적극적으로 제거해야 합니다.

관련 정보