メニュー
Amazon Simple Storage Service
コンソールユーザーガイド

静的ウェブサイトホスティング用に S3 バケットを設定する方法

静的ウェブサイトを Amazon S3 でホスティングできます。静的ウェブサイトでは、個々のウェブページに静的コンテンツが含まれており、クライアント側スクリプトも含まれていることがあります。対照的に、動的ウェブサイトはサーバー側処理に依存しており、例えばサーバー側スクリプト(PHP、JSP、ASP.NET など)が使用されます。サーバー側スクリプトは Amazon S3 ではサポートされていません。

以下では、S3 コンソールでホストされる静的ウェブサイト用の Amazon S3 バケットを設定するための手順を簡単に示します。詳細情報、および静的ウェブサイトでカスタムドメイン名を使用する方法またはウェブサイトを高速化する方法については、Amazon Simple Storage Service 開発者ガイドの「Amazon S3 での静的ウェブサイトのホスティング」を参照してください。

静的ウェブサイトホスティング用に S3 バケットを設定するには

  1. AWS マネジメントコンソール にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. [Bucket name] リストで、静的ウェブサイトホスティングを有効にするバケットの名前を選択します。

  3. [Properties] を選択します。

  4. [Static website hosting] を選択します。

    静的ウェブサイトホスティングのバケットを有効にすれば、ウェブブラウザが、バケットの Amazon S3 のウェブサイトエンドポイントを通じてすべてのコンテンツにアクセスできます。

  5. [Use this bucket to host] を選択します。

    1. [Index Document] に、インデックスドキュメントの名前 (通常は index.html) を入力します。バケットをウェブサイトホスティング用に設定するときは、インデックスドキュメントを指定する必要があります。Amazon S3 からこのインデックスドキュメントが返されるのは、ルートドメインまたはサブフォルダに対するリクエストが行われたときです。詳細については、Amazon Simple Storage Service 開発者ガイド の「バケットをウェブサイトホスティング用に設定」を参照してください。

    2. (オプション) 4XX クラスのエラーの場合は、ウェブサイトのユーザー向けに追加のガイダンスを提供する、ウェブサイト独自のエラードキュメントを返すことができます。[Error Document] に、独自のエラードキュメントを含むファイルの名前を入力します。エラーが発生した場合は、Amazon S3 から HTML エラードキュメントが返されます。詳細については、『Amazon Simple Storage Service 開発者ガイド』の「カスタムエラードキュメントのサポート」を参照してください。

    3. (オプション) 高度なリダイレクトツールを指定する場合、[Edit redirection rules] のテキスト領域に、XML を使用してルールを記述します。たとえば、条件に応じてリクエストのルーティング先を変えることができます。この条件として使用できるのは、リクエストの中の特定のオブジェクトキー名またはプレフィックスです。詳細については、Amazon Simple Storage Service 開発者ガイド の「バケットをウェブサイトホスティング用に設定」を参照してください。

  6. [Save] を選択します。

  7. バケット内のオブジェクトに対するアクセス権限をすべてのユーザーに付与するバケットポリシーを、ウェブサイトバケットに追加します。バケットをウェブサイトとして設定するときは、そのサイトで配信するオブジェクトを、パブリックに読み取り可能となるように設定する必要があります。このようにするには、全員に s3:GetObject を許可するバケットポリシーを作成します。以下のサンプルバケットポリシーは、example-bucket バケット内のオブジェクトへのアクセスをすべてのユーザーに許可します。

    Copy
    { "Version": "2012-10-17", "Statement": [ { "Sid": "PublicReadGetObject", "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::example-bucket/*" ] } ] }

    バケットポリシーの追加については、「S3 バケットポリシーを追加する方法」を参照してください。ウェブサイトのアクセス権限の詳細については、Amazon Simple Storage Service 開発者ガイドの「ウェブサイトアクセスに必要なアクセス許可」を参照してください。

注記

[Disable website hosting] を選択した場合、Amazon S3 ではバケットからウェブサイトの設定がすべて削除され、ウェブサイトのエンドポイントからバケットにアクセスできなくなります。ただし、バケットは引き続き REST エンドポイントでは使用できます。Amazon S3 エンドポイントのリストについては、『アマゾン ウェブ サービス全般のリファレンス』の「Amazon S3 リージョンとエンドポイント」を参照してください。