오브젝트 스토리지를 활용한 정적 웹사이트 구축

오브젝트 스토리지의 여러 기능중 정적 웹서버로의 기능입니다.
보통 웹서버를 구축하기 위해서는 서버내에서 웹서버 설정하는 과정을 거쳐야하지만 오브젝트 스토리지만으로 정적인 홈페이지를 운영할 수 있습니다.
정적 웹사이트란?
양방향 웹 서비스가 아닌 단방향 웹 서비스로서 고객에게 게시 및 단순 정보만을 알리는 목적으로 사용되는 웹 서비스를 말합니다.
Static Web service라고도 하며 게시판등 데이터베이스를 사용하지 않는 웹서비스를 말합니다.
사용예시
- 개인이력 포트폴리오
- 상품 메뉴얼 개시
- 컨퍼런스 또는 워크샵 소개 및 일정
- 관광지, 지역특산물 또는 문화재 소개
오브젝트 스토리지 API 인증키
오브젝트스토리지 API 인증키는 아래 가이드를 통해 참고하여 확인하시기 바랍니다.
오브젝트 스토리지 API 인증키 가이드
API 용어
- Endpoint : 오브젝트 스토리지 인증키 관리 ➡️ API Endpoint
- User_Id : 오 브젝트 스토리지 인증키 관리 ➡️ User ID
- Access_Key : 오브젝트 스토리지 인증키 관리 ➡️ Access Key ID
- Secret_Key : 오브젝트 스토리지 인증키 관리 ➡️ Secret Key ID
- Token : [토큰 키 생성]으로 생성된 X-Auth-Token 값
버킷 생성
오브젝트 스토리지 서비스를 생성 후 버킷생성을 진행합니다.
생성 가이드는 아래 가이드를 참고 부탁드립니다.
웹페이지로 사용할 버킷을 생성 시 모두 접근할 수 있게 [전체공개] 설정합니다.

버킷 설정
웹서버로의 기능을 위한 버킷 메타데이터를 설정합니다.
index페이지 및 error페이지를 위 한 메타데이터를 추가해 버킷내 index문서와 error문서로 사용할 파일을 정의합니다.
swift
swift의 자세한 내용은 [swift-cli 설치방법 및 기본사용법] 참고 부탁드립니다.
index 페이지 정의
swift post -m 'Web-index:index.html' [bucket-name]
잘못된 파일을 호출했을 때 리다이렉트 되는 error 페이지 정의
swift post -m 'Web-error:error.png' [bucket-name]
설정 확인
swift status [bucket-name]

S3 browser
S3 browser의 자세한 내용은 [S3 browser 설치방법 및 기본사용법] 참고 부탁드립니다.
bucket ➡️ Edit Website Configuration

버킷내 파일 설정
"Enable static website hosting for test"를 활성화하고 index 문서와 error 문서 파일을 정의하면 됩니다.
* 본 메뉴얼에서는 index문서는 index.html로, error문서는 error.png로 설정

도메인 연결
외부 노출도메인이 [버킷이름].kr.object.iwinv.kr 형태의 서브도메인이 아닌 개인소유 도메인으로 iwinv Object Storage 연결하는 과정입니다.
정적 웹사이트를 호출하기 위한 도메인은 kr-website.object.iwinv.kr 으로 기존 endpoint와 다르니 주의하시기 바랍니다.
도메인 설정
본 메뉴얼에서 예시로 사용할 도메인은 iwinv.space로 iwinv Object Storage CNAME레코드를 추가합니다.
a. 자체 DNS를 운영하는 경우
- CNAME 레코드 추가
iwinv.space [bucket-name].kr-website.object.iwinv.kr
www.iwinv.space [bucket-name].kr-website.object.iwinv.kr
b. 도메인 구입사 DNS를 이용하는 경우
- CNAME레코드 설정
* 페이지 구성은 도메인사 마다 다를 수 있습니다.

페이지 확인
브라우저를 통해 개인소유 도메인을 호출하게 되면 버킷과 폴더에 업로드한 정적 컨텐츠(html, css, js)가 퍼블리싱 된 것을 확인할 수 있습니다.
