S3 버킷 만들기
CloudFront 배포 생성 & Route 53
- 이미지를 보면 원본 경로가 있는데 s3 내부에 원하는 경로를 입력하면 된다.
- 예를 들어 s3의 image 폴더에 test.png를 접근하고 싶다면 원본경로에 `/image/*`을 적고 기본루트에 /test.png 입력하면 image 폴더가 루트 경로가 돼서 test.png로 접근 가능하다.
- 아무것도 입력하지 않으면 버킷의 root로 바로 접근할 수 있어서 아무것도 적지 않았다.
![](https://blog.kakaocdn.net/dn/bsi8Mz/btsxqxkmV6b/jGSjgObcC87xke4zkWNdD1/img.png)
![](https://blog.kakaocdn.net/dn/ccBREd/btsxp258EU5/HsK6zLWlcfzpVFHhq51Yn1/img.png)
이렇게 웹 사이트 엔드포인트를 사용하라고 할 수도 있는 데 사용을 누르면 이렇게 위에 도메인과 다르게 website가 붙은 도메인이 나오게 된다. 이걸 사용하면 원본 액세스 설정이 없어져서 저걸 사용하며 안 된다.
- 굳이 보안이 필요하지 않다면 비활성화해도 된다.
- [업데이트] 비용이 너무 많이 들어서 비활성화했다.
- 우선 비용을 위해 `북미, 유럽, 아시아, 중동 및 아프리카에서 사용`을 선택했다.
- 그리고 Route 53에서 등록한 도메인을 ` 대체 도메인 이름(CNAME)`에 입력하면 된다.
(도메인을 등록하는 부분은 개인정보도 많이 들어가고 간단한 작업이니 넘어가겠다.) - 그리고 SSL 인증서가 없다면 `인증서 요청`을 클릭해서 생성한다. (인증서는 반드시 버지니아 북부에 있어야 함.)
- 인증서 생성 부분은 바로 밑에 설명이 되어있다.
- 기본값 루트 객체가 있는데 거기에 index.html을 입력한다.
- 이걸 해야 배포도메인 `*.cloudfront.net`만 입력해도 알아서 index.html이 붙어 페이지가 뜬다.
- AWS Certificate Manager > 인증서를 들어가서 도메인에 등록한 도메인이 있고,
Route 53 > 호스팅 영역 > mydomain (mydomain.net) 클릭 레코드에 인증서에 있는 CNAME이 등록되어 있으면 잘 등록한 것이다.
인증서를 다 등록됐다면 인증서를 넣고 CloudFront 배포 생성을 하면 된다.
- 마지막으로 Route 53 > 호스팅 영역 > mydomain(mydomain.net) 클릭 > 레코드 생성을 들어가서 CloudFront에 등록한 도메인을 배포에 선택하면 설정은 완료됐다.
Access Denied 해결을 위한 정책 업데이트
- 이전에 CloudFront 배포 생성을 하면서 기억해 두고 넘어갔던 버킷 정책을 업데이트하겠다.
이렇게까지 하면 Access Denied가 안 뜨고 잘 나올 것이다!
언제나 잘못된 설명이나 부족한 부분에 대한 피드백은 환영입니다🤍