인덱스 문서 구성 - Amazon Simple Storage Service

인덱스 문서 구성

웹 사이트 호스팅을 활성화하는 경우 인덱스 문서도 구성하고 업로드해야 합니다. 인덱스 문서는 웹 사이트의 루트나 임의의 하위 폴더로 요청이 전달되는 경우에 Amazon S3가 반환하는 웹 페이지입니다. 예를 들어, 사용자가 브라우저에 http://www.example.com을 입력하는 경우 사용자는 특정 페이지를 요청하는 것입니다. 이 경우 Amazon S3가 기본 페이지라고도 하는 인덱스 문서를 표시합니다.

버킷용 정적 웹 사이트 호스팅을 활성화할 때 인덱스 문서의 이름(예: index.html)을 입력합니다. 버킷용 정적 웹 사이트 호스팅을 활성화한 후 인덱스 문서 이름이 있는 HTML 파일을 버킷에 업로드합니다.

루트 수준 URL의 후행 슬래쉬는 선택 사항입니다. 예를 들어, 인덱스 문서가 index.html인 웹 사이트를 구성하는 경우 다음과 같은 URL 중 하나에서 index.html이 반환됩니다.

http://example-bucket.s3-website.Region.amazonaws.com/ http://example-bucket.s3-website.Region.amazonaws.com

Amazon S3 웹 사이트 엔드포인트에 대한 자세한 정보는 웹 사이트 엔드포인트를 참조하십시오.

인덱스 문서 및 폴더

Amazon S3에서 버킷은 객체의 플랫 컨테이너입니다. 버킷은 컴퓨터의 파일 시스템과 같이 계층 구조는 제공하지 않습니다. 폴더 구조를 의미하는 객체 키 이름을 사용하여 논리적 계층 구조를 만들 수 있습니다.

예를 들어, 키 이름이 다음과 같은 세 개의 객체가 있는 버킷이 있다고 생각해 보십시오. 객체가 물리적 계층 구조에 따라 저장되지는 않지만 키 이름에 비추어 논리적 폴더 구조가 다음과 같음을 유추할 수 있습니다.

  • sample1.jpg — 객체는 버킷의 루트에 있습니다.

  • photos/2006/Jan/sample2.jpg — 객체는 photos/2006/Jan 하위 폴더에 있습니다.

  • photos/2006/Feb/sample3.jpg — 객체는 photos/2006/Feb 하위 폴더에 있습니다.

Amazon S3 콘솔에서 버킷에 폴더를 만들 수도 있습니다. 예를 들어 photos라는 폴더를 만들 수 있습니다. 이 버킷에 혹은 버킷 내부의 photos 폴더에 객체를 업로드할 수 있습니다. 버킷에 객체 sample.jpg를 추가하는 경우 키 이름은 sample.jpg입니다. photos 폴더에 객체를 업로드하는 경우 객체 키 이름은 photos/sample.jpg입니다.

버킷에 폴더 구조를 만드는 경우 수준별로 인덱스 문서가 있어야 합니다. 각 폴더에서 인덱스 문서의 이름은 동일해야 합니다(예: index.html). 사용자가 폴더 조회 URL을 지정할 때 후행 슬래시의 유무로 웹 사이트의 동작을 판단하게 됩니다. 예를 들어, 뒤에 슬래시가 있는 다음과 같은 URL은 photos/index.html 인덱스 문서를 반환합니다.

http://bucket-name.s3-website.Region.amazonaws.com/photos/

하지만 선행 URL에서 후행 슬래시를 제외하는 경우 Amazon S3은 가장 먼저 버킷의 객체 photos를 찾습니다. photos 객체를 찾을 수 없는 경우 인덱스 문서인 photos/index.html이 검색 대상입니다. 해당 문서를 찾은 경우 Amazon S3가 302 Found 메시지를 반환하고 photos/ 키를 가리킵니다. photos/에 대한 후속 요청의 경우 Amazon S3가 photos/index.html을 반환합니다. 인덱스 문서를 찾을 수 없는 경우 Amazon S3에서 오류를 반환합니다.

인덱스 문서 구성

버킷용 정적 웹 사이트 호스팅을 활성화할 때 인덱스 문서의 이름(예: index.html)을 입력합니다. 버킷용 정적 웹 사이트 호스팅을 활성화한 후 인덱스 문서 이름이 있는 HTML 파일을 버킷에 업로드합니다.

인덱스 문서를 구성하려면

  1. index.html 파일을 생성합니다.

    index.html 파일이 없으면 다음 HTML을 사용하여 파일을 생성할 수 있습니다.

    <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>My Website Home Page</title> </head> <body> <h1>Welcome to my website</h1> <p>Now hosted on Amazon S3!</p> </body> </html>
  2. 버킷에 대해 정적 웹 사이트 호스팅을 활성화할 때 입력한 정확한 인덱스 문서 이름으로 인덱스 파일을 로컬에 저장합니다(예: index.html).

    인덱스 문서 파일 이름은 정적 웹 사이트 호스팅 대화 상자에 입력한 인덱스 문서 이름과 정확히 일치해야 합니다. 인덱스 문서 이름은 대/소문자를 구분합니다. 예를 들어 정적 웹 사이트 호스팅 대화 상자에서 인덱스 문서 이름에 index.html을 입력하는 경우, 인덱스 문서 파일은 Index.html이 아니라 index.html이어야 합니다.

  3. AWS Management 콘솔에 로그인한 다음 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.

  4. 버킷 목록에서 정적 웹 사이트를 호스팅하는 데 사용할 버킷의 이름을 선택합니다.

  5. 버킷에 정적 웹 사이트 호스팅을 활성화하고 인덱스 문서의 정확한 이름(예: index.html)을 입력합니다. 자세한 내용은 웹 사이트 호스팅 사용 단원을 참조하십시오.

    정적 웹 사이트 호스팅을 활성화한 후 6단계로 이동합니다.

  6. 버킷에 인덱스 문서를 업로드하려면 다음 중 하나를 수행합니다.

    • 인덱스 파일을 콘솔 버킷 목록으로 끌어다 놓습니다.

    • 업로드를 선택하고 프롬프트의 메시지에 따라 인덱스 파일을 선택하고 업로드합니다.

    단계별 지침은 Amazon Simple Storage Service 콘솔 사용 설명서Amazon S3 버킷에 파일 및 폴더를 업로드하려면 어떻게 해야 합니까?를 참조하십시오.

  7. (선택 사항) 버킷에 다른 웹 사이트 콘텐츠를 업로드합니다.

그런 다음 웹 사이트 액세스에 대한 권한을 설정해야 합니다. 자세한 내용은 웹 사이트 액세스에 대한 권한 설정 단원을 참조하십시오. 오류 문서, 웹 트래픽 로깅 또는 리디렉션을 선택적으로 구성할 수도 있습니다.