LoginSignup
1
1

More than 1 year has passed since last update.

AWS S3で簡単ウェブサイト作成!

Posted at

AWSのS3といえばストレージサービスですが、実はウェブサイトをホストすることもできます。
EC2インスタンス等のVMを用意したり、webサーバをインストールしたり、そういった設定は一切不要なので、非常に簡単です。
さっそくやってみましょう!

1. S3 バスケットを作成する

まずは、S3 バスケットを作成しましょう。バスケットとはフォルダのようなものです。
サービス検索窓からS3と入力し、S3をクリックします。

0.png

「バケットを作成」をクリックします。

32.png

バスケット名を入力します。この名前は基本的にグローバルで一意である必要があります(厳密なルールは公式ドキュメントを参照してください)。つまり他の人が既に使っていたらエラーメッセージが出るので、別の名前にしましょう。今回はmyultimatewebsiteとしました。

3.png

それ以外は現状デフォルトで問題ないです。下にスクロールして、「バケットを作成」をクリックしましょう。

2.png

とりあえずバケットが作成できました。

2. 静的ウェブサイトホスティングの設定をする

1で作成したバケットに設定していきます。バケット名をクリックしましょう。

4.png

プロバティをクリックします。

5.png

下にスクロールして、「静的ウェブサイトホスティング」の「編集」をクリックします。

6.png

ここでウェブサイトのホームページにあたるファイルを設定します。通常はindex.htmlで良いでしょう。
今回はこのファイルだけのサイトにしますので、他は入力せず「変更の保存」をクリックします。

8.png

3. アクセス許可の設定をする

注意!!
ここからバケットの公開設定をします。もしバケット内に他の貴重なファイルを格納してる場合は、この設定により公開されてしまうので、そのようなファイルがないか確認してください。この記事のやり方の通りにやっている場合は、テストのファイルしか格納しないので問題ありません。

「アクセス許可」をクリックします。ブロックパブリックアクセス(バケット設定)の「編集」をクリックしましょう。

9.png

「パブリックアクセスをすべてブロック」のチェックを外し、「変更の保存」をクリックします。

10.png

先ほど説明しましたが、この公開処理は注意が必要です。内容を確認して、フィールドに「確認」と入力し、「確認」をクリックします。

11.png

これで終わりではありません。バケットポリシーの設定も必要です。「編集」をクリックしましょう。

12.png

以下のポリシーをコピーし、フィールドに貼り付けてください。
AWSのドキュメントに書かれていたものです。

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

バケット名を記入している部分に注意してください。今回はmyultimatewebsiteとしています。もし違う名前でバケットを作成した場合は、その名前を入力してください。

13.png

「変更の保存」をクリックしましょう。これで公開設定ができました。

15.png

4. テスト用のHTMLファイルを作成する

今回作成するウェブサイトのホームページを作成します。
HTMLファイルであればなんでも良いです。
すぐに試したい場合は、AWSドキュメントにあった以下のサンプルファイルを使ってみてください。

<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>

ファイル名は先ほど設定したindex.htmlとしてください。

5. S3にHTMLファイルをアップロードする

先ほどのファイルをアップロードしましょう。
「オブジェクト」をクリックし、「アップロード」をクリックします。

17.png

「ファイルを追加」を選択し、index.htmlをアップロードしてください。
先ほど注意書きにも書きましたが、このバスケットはインターネットに公開されていますので、貴重なファイル等をアップロードしないように注意してください。

18.png

index.htmlが追加されたことを確認し、「アップロード」をクリックします。

19.png

6. ウェブサイトにアクセスする!

もうウェブサイトは完成しています!さっそくアクセスしてみましょう!
「プロパティ」を選択してください。

21.png

下にスクロールして、ウェブサイトのurlをクリックしましょう!!

22.png

無事に接続できました!!

23.png

7. お掃除(ファイルの削除等)

ここ大事です。テストや勉強のためだけであれば、作った環境はその都度お掃除したほうが良いです。
セキュリティ事故や無駄な料金発生を防げますし、色々試しやすくなります。

まずはバケットを空にします。今回作ったバケットを選択し、「空にする」をクリックします。

24.png

注意事項を読んで、「完全に削除」と入力し、「空にする」をクリックします。

25.png

次にバケットを削除します。同様にバケットを選択し、「削除」をクリックします。

27.png

バケット名(今回はmyultimatewebsite)を入力して、「バケットを削除」をクリックします。

29.png

これでお掃除完了です!

30.png

参考(公式ドキュメント)

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1