【AWS】S3で静的なWebサイトを公開する

目標

S3で静的なWebサイトを公開する。

やること

バケットの作成
静的ウェブサイトホスティングの有効化
バケットポリシーの編集
ファイルのアップロード

バケットの作成

バケット名はグローバルで一意でなければならない。
また、独自ドメインを設定する場合はドメイン名と同じにする。
※ CloudFrontに対して独自ドメインを設定する場合は同じにする必要はない。

パブリックアクセスのブロックをすべてオフにする。

静的ウェブサイトホスティングの有効化

プロパティの静的ウェブサイトホスティングから
静的ウェブサイトホスティングを有効にする。

インデックスドキュメントとして index.html を設定する。

バケットポリシーの編集

アクセス許可のバケットポリシーから以下のように編集する。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Statement1",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::{バケット名}/*"
        }
    ]
}

ファイルのアップロード

今回は動作確認のため、以下の内容のファイルをアップロードして
「Hello, S3!」と表示されることを確認する。

index.html

<!DOCTYPE html>
<html lang="ja">
  <head>
    <meta charset="utf-8">
    <title>【AWS】S3で静的なWebサイトを公開する</title>
  </head>
  <body>
    <p>Hello, S3!</p>
  </body>
</html>

プロパティの静的ウェブサイトホスティングにある
バケットウェブサイトエンドポイントからアクセスする。
http://{バケット名}.s3-website-ap-northeast-1.amazonaws.com/

「Hello, S3!」と表示されれば完了。

課題

現在のURL: http://{バケット名}.s3-website-ap-northeast-1.amazonaws.com/

URLがカッコ悪い -> 独自ドメインの設定や常時SSL化などの対応が必要

タイトルとURLをコピーしました