要するに

独自ドメインでアクセスしたのにS3のURLに転送されるのは、だいたい待てば直るらしい。

詳細

標題の件で、日本語の情報があまりない気がしたので一筆書きました。

このブログはVPSでやってるんですが、ブログみたいに静的なファイルしか使わないんだったらS3もいいんじゃね?ってことで、やってみたわけです。

HTTPでいいなら簡単で、

  1. S3バケットを作る
  2. S3バケットに静的ファイルを上げる
  3. S3バケットを公開する
  4. 手持ちのドメインの設定で、S3バケットをCNAMEとかで参照する

くらいで済みます(最低限)。

しかし、今の時代なんとなくHTTPSに対応させたいものです。

調べて見ると任意ドメインでのHTTPS化にはCloudFrontとRoute53を介する必要があります(さらに、CloudFrontに鍵を登録する必要があります。これもAWS内で完結する処理なのですが、用意したドメインでのメール受信設定やらなんやらもする必要があります。割愛)。

諸々の設定が終わった!ということでいざ独自ドメインでアクセスしてみると、
なぜか独自ドメイン(hogehoge.com)から
S3バケットのURL(hogehoge.com.s3-fugafuga.amazonaws.com)に転送される!

という現象に遭遇しました。

そのせいで、HTTPSにはなったものの保護されていない通信マークが点灯してしまいました。

これはあかんので、いろいろ悩んだのですが、どうやら仕様らしいです。

AWSのDiscussion Forumsより

Per our AWS documentation (http://docs.aws.amazon.com/AmazonS3/latest/dev/Redirects.html), Due to the distributed nature of Amazon S3, requests can be temporarily routed to the wrong facility. This is most likely to occur immediately after buckets are created or deleted.

S3バケット作った直後だったりするとこうなるらしいです。

結論としては待つしかないようです。