JINIers
S3 이용 서버리스 구축 본문
S3를 사용한 정적 사이트 구축방법
생각보다 간단하다.
s3 → create bucket → 버킷 이름 설정 → 버킷 만들기
정적 웹사이트 호스팅 설정
버킷 속성 → 정적 웹 사이트 호스팅 → 편집
정적 웹사이트 호스팅 '활성화'
아래 그림처럼 세팅 후 저장
그럼 이렇게 주소가 생긴다.
index.html 파일과 error.html 파일을 버킷에 저장해준다.
그리고 접속하면 403 에러가 뜸!
access denied 가 떴는데 접근을 허용하려면 bucket policy를 변경해줘야한다.
bucket policy 변경
bucket → 권한 → 퍼블릭 액세스 차단(버킷설정) 설정 → 모든 퍼블릭 액세스 차단 해제 → 변경사항 저장
그럼 퍼블릭 액세스 차단이 비활성으로 바뀐다.
버킷 정책 → 편집
{
"Version": "2012-10-17",
"Statement": [
{
"Sid":"PublicReadForGetBucketObjects",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::[버킷이름]/*"
}
]
}
설정한 뒤 웹사이트 새로고침하면 된다.
redirection rules
특정경로, http 오류코드 등의 조건에 따라 라우팅을 지정해주는 기능
ming/에 접근하면 svt/로 리다이렉트 하게 만들어 줄거임
속성 → 정적 웹사이트 호스팅 편집 → 리디렉션 규칙 작성
* 리디렉션 구성 참고 : https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/how-to-page-redirect.html#redirect-endpoint-host
[
{
"Condition": {
"KeyPrefixEquals": "ming/"
},
"Redirect": {
"ReplaceKeyPrefixWith": "svt/"
}
}
]
cloud shell을 열어서 아래 명령어 입력
curl -I [웹사이트 엔드포인트]/ming/
curl -I http://serverless-bucket-0526.s3-website.ap-northeast-2.amazonaws.com/ming/
그럼 location이 ming/에서 svt/로 변경된 것을 알 수 있음
404 오류가 발생했을 때 404 전용 오류 페이지로 리다이렉트 설정
일단 404.html 파일을 만들어 버킷에 업로드 한다.
속성 → 정적 웹사이트 호스팅 편집 → 리디렉션 규칙 작성 → 규칙 추가
[
{
"Condition": {
"HttpErrorCodeReturnedEquals": "404"
},
"Redirect": {
"HostName": "[hostname 입력]",
"ReplaceKeyPrefixWith": "404.html"
}
}
]
결과
이긴한데 이게 맞는지 모르겠다.
어쨌든 여기까지 끝.!
'AWS > 이것저것' 카테고리의 다른 글
cloudformaiton 이용 네트워크 구성하기(autoscaling 생성) (0) | 2024.03.29 |
---|---|
cloudformaiton 이용 네트워크 구성하기(LB 생성) (0) | 2024.03.29 |
cloudformaiton 이용 네트워크 구성하기(vpc 생성) (0) | 2024.03.29 |
create vpc.yaml (0) | 2024.03.14 |
동적 사이트 구축.yaml (0) | 2024.03.14 |