S3のバケットにアクセスするには2つの形式のURLがある。
仮想ホスト形式(virtual-hosted-style)とパス形式(path-style)である。
仮想ホスト形式
バケットがどのリージョンにあっても下記の形式でアクセスできる。
http://bucket.s3.amazonaws.com
リージョンごとのエンドポイントでもアクセスできる。
下記は東京リージョンの場合。
http://bucket.s3-ap-northeast-1.amazonaws.com
パス形式
パス形式の場合は仮想ホスト形式と違ってリージョンの指定が必須。
US Standard endpointの場合。
http://s3.amazonaws.com/bucket
東京リージョンの場合。
http://s3-ap-northeast-1.amazonaws.com/bucket
注意点
ホスト名とアンスコ
バケット名を付ける時はドメインに含まれることを想定すること。
とりあえず、バケット名にアンスコは含めない方が無難。
Bucket Restrictions and Limitations
Virtual Hosting of Buckets
署名付きリクエストとリージョンなしURL
署名付きリクエストでS3にアクセスする場合リージョンを含まないURLだとSignature Version 4が使えない。
スコープの一部にリージョン情報を使ってるっぽい。
CloudFormationからS3にアクセスするとVer2にフォールバックする警告がでる。