月額約10円でウェブサイトを設置できます。そう、Amazon S3ならね
『Amazon S3で始める写真管理 ー スタート編』のように写真をいっぱいS3にアップしたんだけれど、これを誰かに見せたい、アルバムサイトにしたい、
会社やサークルの紹介サイトを気軽に立てたい、できるだけ安価でサイトを設置したいときなどによく効くとてもエキサイティングな方法です。
準備
下記をご用意ください。
- AWSのアカウント
- AWS Management Console(AWS管理画面)にアクセスできる環境
- サイトに置くコンテンツ(HTMLファイル、画像ファイルなど)
- サイトを公開するドメイン(必須ではないですが、あると便利です)
- お時間1時間くらい
サイト公開用のバケットを作る
AWS Management Consoleにて、アップ先であるバケットを作ります。
このバケットがウェブサーバでいうDocument Rootになります。
バケットの名前をサイトのドメインと同じにします。
バケットをサイト公開に属性を変更します。
バケットの上で右クリックして「Properties」を選びます。
「Static Website Hosting」をクリックします。
「Endpoint」のところに表示されるURLがこれから立てるサイトのURLになります。
「Enable website hosting」を選んで、
「Index Document」にトップページのコンテンツファイル、
「Error Document」に「ページが見つからない」などのエラー表示するコンテンツファイルを指定します。
このままでは自分しか見られないのでバケットの権限を変更します。
「Permissions」を選択して「Add bucket policy」をクリックします。
下記の内容をコピペします。
{
"Version":"2008-10-17",
"Statement":[{
"Sid":"PublicReadForGetBucketObjects",
"Effect":"Allow",
"Principal": {
"AWS": "*"
},
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3::: www.altimit.info/*"
]
}
]
}
赤字のところはバケット名に合わせて直してください。
これで準備ができました。
S3にコンテンツをアップしてサイトを表示してみる
上記までの手順で設定した、トップページにするコンテンツファイルと、エラー表示するコンテンツファイルをバケットにアップします。
さきほどの表示されたURLにブラウザでアクセスしてみます。
トップページ
エラー表示ページ
ドメインを使いたい
エンドポイント名ではなく、ドメインでサイトにアクセスできるようにしたいとお考えになる頃だと思います。
簡単にできます。
そう、AWSならね。
「ドメイン名でアクセスされたら、エンドポイント名に変換する」という設定を DNSに設定します。
AWSでDNSと言ったら、Route 53です。
AWS Management ConsoleのメニューでRoute 53を選びます。
DNSのCNAMEレコードの設定をします。
エンドポイント名の別名としてドメイン名(サイト名)を設定します。
ドメインでアクセスしてみます。
エラー表示ページももちろん大丈夫です。
まとめと注意
S3にアップするコンテンツは静的なものに限られます。
たとえば、CGIスクリプトをアップして、問合せフォームや掲示板を…ということはできません。
そのような場合は、JavaScriptやFlashファイルは動きますので、これらを使うようにしてください。
このように、簡単にサイトを設置・公開することができます。
気軽にサイトを立ちあげたい、安く済ませたい場合、とても使える方法かと思います。
しかもS3はファイルをアップするだけでミラーリングされて保管されるので、バックアップは不要です。
S3やRoute 53の利用料もさほどかかりませんので、「AWSってどんなものなんだろう?」という方は、まずはこのあたりからパワフルなAWSを体験してみるのはいかがでしょうか。
なぜ表示サンプルが「メンテ中」なのかは次回あたりに…
maeda
最新記事 by maeda (全て見る)
- 【初心に帰るシリーズ】月額約10円でウェブサイトを設置する - 2013年5月23日
- Tips AWSへの上限緩和申請するのにググる貴方へ - 2013年3月21日
- JAWS Days 2013に参加しました - 2013年3月19日