[AWS]「S3」WEBホスティング

Amazon S3によるWEBホスティングを行います。
今回はシンプルにS3のみで行うものです。
ですからhttpでしか接続できません。

1. アクセスログ記録用S3バケットの作成

まず、WEBホスティングのアクセスログを記録するためのs3バケットを作成します。
※アクセスログを記録しない場合には不要です。
  • AWS マネジメントコンソールにログインします。
  • サービスメニューより「s3」をクリックします。
(1) 名前とリージョン
  • ダッシュボードから「バケットを作成する」ボタンをクリックします。
バケット名 (例)www.example.jp-logs
リージョン アジアパシフィック(東京)
既存のバケットから設定をコピー (空白)
※バケット名は任意ですので、分かりやすい名前を付けて下さい。
  • 「次へ」をクリックします。
(2) オプションの設定
■バージョニング
チェックを付けないでそのままにします。
■サーバアクセスのログ記録
チェックを付けないで、そのままにします。
■Tags
必要であれば、任意のタグ名を付けます。
■オブジェクトレベルのログ記録
チェックを付けないで、そのままにします。
■デフォルト暗号化
チェックを付けないで、そのままにします。
■オブジェクトのロック
チェックを付けないで、そのままにします。
■CloudWatch リクエストメトリクス
チェックを付けないで、そのままにします。

  • 「次へ」をクリックします。
(3) アクセス許可の設定
■ブロックパブリックアクセス(バケット設定)
「パブリックアクセスをすべてブロック」にチェックを付けたままにします。
■システムのアクセス許可の管理
「Amazon S3 ログ配信グループにこのバケットへの書き込みアクセス権限を付与する」を選択します。

  • 「次へ」をクリックします。
(4) 確認
  • 設定した内容を確認して「バケットを作成」ボタンをクリックします。

2. WEBホスティング用S3バケットの作成

次にWEBホスティングを行うためのバケットを作成します。
(1) 名前とリージョン
  • ダッシュボードから「バケットを作成する」ボタンをクリックします。
バケット名 (例)www.example.jp-web
リージョン アジアパシフィック(東京)
既存のバケットから設定をコピー (空白)
※バケット名は任意ですので、分かりやすい名前を付けて下さい。
  • 「次へ」をクリックします。
(2) オプションの設定
■バージョニング
チェックを付けないでそのままにします。
■サーバアクセスのログ記録
チェックを付けます。
※アクセスログを記録しない場合はチェックを外して下さい。
ターゲットバケット (最初に作成したアクセスログ記録用バケット名)
ターゲットプレフィックス (例)web-logs/
■Tags
必要であれば、任意のタグ名を付けます。
■オブジェクトレベルのログ記録
チェックを付けないで、そのままにします。
■デフォルト暗号化
チェックを付けないで、そのままにします。
■オブジェクトのロック
チェックを付けないで、そのままにします。
■CloudWatch リクエストメトリクス
チェックを付けないで、そのままにします。
※CloudWatchでモニタリングしたい場合はチェックを付けます。

  • 「次へ」をクリックします。
(3) アクセス許可の設定
■ブロックパブリックアクセス(バケット設定)
「パブリックアクセスをすべてブロック」のチェックを外します。
「現在の設定により、このバケットと中のオブジェクトがパブリックになる可能性があることを了承します」にチェックを付けます。

■システムのアクセス許可の管理
「Amazon S3 ログ配信グループにこのバケットへの書き込みアクセス権限を付与しない」を選択します。

  • 「次へ」をクリックします。
(4) 確認
  • 設定した内容を確認して「バケットを作成」ボタンをクリックします。

3. 静的WEBサイトホスティングの設定

(1) WEBサイトホスティングの有効化
  • 作成したバケット名のリンクをクリックします。
  • 「プロパティ」タブをクリックします。
  • 「Static website hosting」をクリックします。
  • 「このバケットを使用してウェブサイトをホストする」を選択します。
インデックスドキュメント index.html
エラードキュメント error.html
リダイレクトルール (任意) (空白)
  • エンドポイントはWEBでアクセスする際のURLとなるので、メモします。
  • 「保存」ボタンをクリックします。
(2) バケットの内容を公開許可
WEBサイトのパブリック読み取りアクセスを許可します。
  • 作成したバケット名のリンクをクリックします。
  • 「アクセス権限」タブをクリックします。
  • 「バケットポリシー」を選択します。
  • バケットポリシーエディタに以下の内容を記入します。
※「(バケット名)」にWEBホスティングを行うバケット名を記入します。
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "PublicReadGetObject",
            "Effect": "Allow",
            "Principal": "*",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::(バケット名)/*"
            ]
        }
    ]
}
 
  • 「保存」ボタンをクリックします。
  • 「index.html」ページを作成して、バケットにアップロードして、エンドポイントに記載されているURLをブラウザでアクセスします。ページが閲覧できたらOKです。







最終更新:2020年07月16日 08:16