siklog
[NCP/Object Storage] Object Storage Bucket 에서 정적웹사이트 호스팅 및 도메인 연결 방법(feat. CDN) 본문
[NCP/Object Storage] Object Storage Bucket 에서 정적웹사이트 호스팅 및 도메인 연결 방법(feat. CDN)
ms 2022. 5. 1. 18:42정적 웹 사이트는 저장된 그대로 사용자에게 제공되는 웹 사이트로, 콘텐츠 변화가 비교적 드문 사이트에 적합하며, 흔한 사용 사례로는 개인용 웹 사이트나 간단한 마케팅용 웹 사이트 등에 이용된다.
보통 웹서버단에서 정적 데이터를 처리하게 되는데 AWS의 S3나 NCP의 Object Storage 같은 서비스에서는 정적 웹 사이트 호스팅 기능을 제공하고 있어 별도 서버를 이용하지 않아도 정적 데이터를 처리할 수 있어 관리가 편리하고 비용적으로도 큰 이점이 될 수 있다.
다만, 말 그대로 딱 정적 웹 페이지만 표시되기 때문에 여러용도로 사용하기엔 한계점이 있다.
간단하게 Object Storage에서 정적 웹 사이트 호스팅 기능을 이용해봤다.
1. 정적데이터 생성
먼저 버킷에 올릴 정적 데이터를 준비해 주도록 한다
테스트는 부트스트랩에서 다운 받은 파일을 사용하였고, 간단하게 아무 내용으로 html 파일을 직접 만들어도 된다.
2. 버킷에 파일 업로드
생성한 파일을 그대로 버킷에 올려주면된다.
3. 권한 설정
정적 웹 사이트 호스팅을 사용하려면 콘텐츠로 접근할 수 있도록 버킷 내의 해당 파일을 공개 설정해야 한다.
업로드 시에도 권한 설정이 가능하나 안되어 있다면 공개로 권한을 변경하도록 하자.
4. 정적 웹 사이트 호스팅 설정 및 확인
버킷에서 정적 웹 사이트 호스팅 버튼을 선택 후 활성화를 하면 접근 가능한 엔드포인트가 생성되고 설정에 해당 인덱스 파일을 입력해주면다.
생성된 엔드포인트로 접근하면 정상적으로 웹 페이지가 출력되고 있는 것을 확인할 수 있다.
5. 버킷에 자신의 도메인 연결하는 방법
AWS에서는 S3에서 기본 제공하고 있는 엔드포인트 대신 Route53을 이용하여 CNAME으로 자신의 도메인을 등록하여 사용할 수도 있지만, 아쉽게도 NCP Object Storage에서는 DNS로 자신의 도메인을 연결하여 정적 웹 사이트 호스팅 하는 기능은 지원하지 않는다.
위와 같은 부분이 차이점이라고 볼 수 있는데,
다만, CDN 서비스를 같이 이용한다면 Global DNS에서 CNAME으로 자신의 도메인을 등록하여 사용하는 기능을 사용할 수 있다.
1) CDN 서비스 도메인 설정 부분에서 보유 도메인 사용에 체크한 후 도메인을 입력한다.
2) 서비스 도메인 내용 보기를 클릭하면 아래와 같이 고객 도메인과 NCP 도메인이 나오게 되는데 '서비스 도메인'으로 설정한 고객 도메인으로만 정상적으로 서비스가 가능하며, NCP 도메인은 서비스 호출용이 아닌 CDN 연결을 위한 CNAME 레코드용 도메인이라 호출 시 403 Error가 나오게 된다.
3) Global DNS에 본인이 사용할 도메인을 등록하고 CDN 연결을 위한 CNAME 레코드용 도메인을 레코드에 추가한다.
4) 전파가 완료되면 자신이 설정해놓은 도메인으로 접속하였을 때 버킷에 올려두었던 페이지 파일로 연결이 되는 것을 확인할 수 있다.
위와 같이 CDN 서비스에서 Object Storage 버킷을 원본으로 하고 Global DNS에서 CNAME으로 자신의 도메인을 등록하여 사용하는 방법은, 컨텐츠의 전체경로로 접근해야 하기 때문에 정적 웹 서버 호스팅으로 이용이 불가능하다..
즉, 원본 경로로 지정된 디렉터리 전체로 접근이 되어 뒤에 "/index.html" 같이 파일 경로를 따로 붙여 줘야 한다.
'클라우드' 카테고리의 다른 글
[DB/MySql] MySql 부하테스트 방법 (0) | 2022.06.06 |
---|---|
[Server/Security] Let’s Encrypt SSL 무료 인증서 발급 방법 (1) | 2022.04.17 |