S3 を Web公開し、独自ドメインに紐付け
S3にバケットをつくる。この時、バケット名は、そのWeb公開したい独自ドメインとしなければならない。例えば、
static.dokujidomain.com や assets.dokujidomain.com
になるだろう。バケットの設定は Static Website Hosting を有効化する。Index Documentは index.html
でいいだろう。Permissions については、いちいちファイルを挙げては Make Public するのはアレなので、バケット全体のポリシーの設定をする。具体的には [ Edit Bucket Policy ] ボタンを押し、下記の Json を入力する。
{ "Version":"2008-10-17", "Statement":[{ "Sid":"PublicReadForGetBucketObjects", "Effect":"Allow", "Principal": { "AWS": "*" }, "Action":["s3:GetObject"], "Resource":["arn:aws:s3:::static.dokujidomain.com/*" ] } ] }
static.dokujidomain.com
については実際に使うドメインに読み替えてほしい。
この時点で、index.html を作ってアップすれば公開されている。s3の複雑なURLではアクセスができるだろう。
これをRoute53で独自ドメインとひもづける必要がある。 R53の設定に移動し、dokujidomain.com を設定しているZoneの設定にRecordを追加する。ググるとCNAMEで設定している記事やAレコードでAliasを使っている記事もある。私は後者で設定した。
結局のところ
http://aws.typepad.com/aws_japan/2012/08/hosting-website-on-s3.html
を見ながら設定するのが一番いいと思う。