AWS S3 버킷에 업로드한 이미지나 동영상 파일을 CloudFront를 통해 퍼블릭 URL로 제공하는 방법을 단계별로 안내합니다. CloudFront는 AWS의 글로벌 CDN(콘텐츠 전송 네트워크) 서비스로, S3의 파일을 더 빠르고 안전하게 전 세계에 배포할 수 있습니다.
1. AWS 회원가입
AWS를 처음 사용하시는 분은 먼저 계정을 생성해야 합니다.
단계별 회원가입 과정
- AWS 공식 사이트 접속
- '무료 계정 생성' 버튼 클릭
- 계정 정보 입력
- 이메일 주소, 계정 이름, 비밀번호 입력
- 이메일 인증 진행
- 연락처 정보 입력
- 이름, 주소, 전화번호 등 개인정보 입력
- 결제 정보 입력
- 신용카드 정보 입력 (소액 결제 후 환불)
- 1년 무료 티어 자동 적용
⚠️ 참고: 신용카드 등록이 필요하지만, 무료 티어 범위 내에서는 과금되지 않습니다.
- 휴대폰 인증
- SMS 또는 음성통화로 인증번호 확인
- 계정 유형 및 지원 플랜 선택
- 개인/비즈니스 선택
- 기본 지원(무료) 선택
2. S3 버킷 생성 및 파일 업로드
2.1 S3 버킷 생성
- AWS 콘솔 접속
- AWS Management Console에 로그인
- 상단 검색창에 'S3' 입력 후 서비스 선택
- 버킷 생성하기
- '버킷 만들기' 버튼 클릭
- 버킷 설정 및 생성
- 기본 설정
- 버킷 이름: 영문 소문자, 숫자, 하이픈만 사용 (전 세계 고유해야 함)
- 리전: Asia Pacific (Seoul) ap-northeast-2 권장
- 객체 소유권 설정
- 기본값(ACL 비활성화) 유지
- 퍼블릭 액세스 차단 설정
- 중요: CloudFront를 사용할 때는 모든 퍼블릭 액세스를 차단해도 됩니다
- 보안을 위해 차단 상태로 유지하는 것을 권장
- 버킷 생성 완료
- 나머지 옵션은 기본값으로 두고 '버킷 만들기' 클릭
버킷명이 고유하지 않아서, dantelabs → dante-labs-test 로 변경했습니다. 여러분도 고유하게 만드셔야 합니다
2.2 파일 업로드
- 생성한 버킷 클릭
- S3 버킷 목록에서 방금 만든 버킷 선택
- 파일 업로드
- '업로드' 버튼 클릭
- 이미지/동영상 파일을 드래그 앤 드롭 또는 '파일 추가'로 선택
- 업로드 완료 확인
- 업로드된 파일이 객체 목록에 표시되는지 확인
3. CloudFront 배포 생성
3.1 CloudFront 서비스 접속
- CloudFront 서비스 찾기
- AWS 콘솔 상단 검색창에 'CloudFront' 입력
- CloudFront 서비스 선택
- 배포 생성 시작
- '배포 생성(Create Distribution)' 버튼 클릭
3.2 배포 설정
원본 설정 (Origin Settings)
- 배포 이름과 설명 입력
- 배포 이름과 설명을 작성후 [Next] 버튼 클릭
- 원본 도메인 (Origin Domain)
- Origin type을 Amazon S3로 선택
- [Browser S3] 버튼을 눌러서 팝업메뉴에서 앞서 생성한 S3 버킷 선택
- 자동으로 S3 버킷 도메인이 입력됨
- 원본 경로 (Origin Path)
- S3 버킷 내 특정 폴더만 배포하려면 경로 입력 (예:
/images
) - 전체 버킷을 배포하려면 비워둡니다
- Settings 에서 “Allow private S3 Bucket access to CloudFront” 체크
- “Use recommended origin settings” 선택
- [Next] 버튼 클릭
- 보안설정 (Enable security)
- [보안 보호 비활성화] 선택
- [Next] 버튼 클릭
- 설정 확인 및 배포 생성 (Review and create)
- [create distribution] 버튼 클릭
- 배포 도메인 확인 (할당된 도메인 이름 기록 예:
d1234abcd.cloudfront.net
)
3.3 배포 상태 확인
- 배포 목록에서 확인
- 새로 생성된 배포가 목록에 나타남
- 상태가 '배포'에서 활성상태로 변경될 때까지 대기 (보통 1-10분 소요)
4. CloudFront URL로 파일 접근
4.1 URL 구조 이해
CloudFront URL의 기본 구조는 다음과 같습니다:
https://[CloudFront-도메인]/[파일경로]
예시:
https://d1234abcd.cloudfront.net/images/sample.jpg https://d1234abcd.cloudfront.net/videos/demo.mp4
4.2 파일 접근 테스트
- CloudFront 도메인 확인
- CloudFront 배포 목록에서 할당받은 도메인 복사
- URL 생성
- S3에 업로드한 파일의 경로와 이름을 CloudFront 도메인 뒤에 추가
📸 [이미지 위치: S3에서 파일 경로 확인하는 화면]
- 브라우저에서 테스트
- 생성한 URL을 브라우저 주소창에 입력
- 이미지/동영상이 정상적으로 로드되는지 확인
📸 [이미지 위치: 브라우저에서 CloudFront URL로 이미지가 로드되는 화면]
4.3 성공 확인 방법
✅ 성공적으로 설정된 경우:
- 브라우저에서 이미지가 즉시 로드됨
- 동영상 파일의 경우 스트리밍 재생 가능
- 개발자 도구에서 응답 헤더에 CloudFront 관련 정보 확인 가능
5. 문제 해결
5.1 자주 발생하는 오류
❌ 403 Forbidden 오류
원인:
- S3 버킷 정책이 올바르게 설정되지 않음
- OAC 설정이 누락됨
해결방법:
- S3 버킷 정책에서 CloudFront ARN이 정확한지 확인
- OAC가 올바르게 생성되고 연결되었는지 확인
📸 [이미지 위치: 403 오류 화면과 올바른 설정 비교]
❌ 404 Not Found 오류
원인:
- 파일 경로가 잘못됨
- 파일이 S3에 업로드되지 않음
해결방법:
- S3에서 파일 존재 여부 확인
- URL의 파일 경로가 정확한지 확인
❌ CloudFront 배포가 활성화되지 않음
원인:
- 배포 설정 중 오류
- 시간이 더 필요함
해결방법:
- 15-20분 정도 더 대기
- 배포 설정을 다시 확인
5.2 성능 최적화 팁
- 적절한 리전 선택
- S3 버킷은 주 사용자층에 가까운 리전에 생성
- 파일 형식 최적화
- 이미지: WebP 형식 사용 권장
- 동영상: 적절한 비트레이트와 해상도 설정
- 모니터링 활용
- CloudWatch를 통한 사용량 및 성능 모니터링
📸 [이미지 위치: CloudWatch 모니터링 대시보드]
🎯 마무리
이제 AWS S3와 CloudFront를 활용하여 이미지와 동영상 파일을 전 세계 어디서나 빠르게 접근할 수 있는 퍼블릭 URL을 생성할 수 있습니다.
✅ 완료 체크리스트
AWS 계정 생성 및 로그인
S3 버킷 생성 및 파일 업로드
CloudFront 배포 생성
CloudFront URL로 파일 접근 테스트
💡 핵심 포인트
- 보안: S3 퍼블릭 액세스를 차단하고 CloudFront OAC 사용
- 성능: CloudFront의 글로벌 CDN으로 빠른 파일 배포
- 비용 효율성: AWS 무료 티어 활용 및 필요에 따른 설정 조정
📞 추가 지원
- AWS 공식 문서: CloudFront 개발자 가이드
- AWS 지원 센터: support.aws.amazon.com
⚠️ 주의사항
- 민감한 데이터는 퍼블릭 배포를 피하세요
- 정기적으로 비용 및 사용량을 모니터링하세요
- 불필요한 파일은 정리하여 스토리지 비용을 절약하세요