AWS S3静的ウェブサイトリダイレクトを使用して、Apexドメイン(example.com)から参考文献ドメイン。
私は以下のガイドを使用しましたhttps://medium.com/faun/redirect-naked-domain-to-www-with-https-on-aws-route-53-e620e4ce989d
Route53でapexドメインのAレコードを作成しましたexample.com
example.com A Simple s3-website-eu-west-1.amazonaws.com.
私のウェブサイトを配信するクラウドフロントディストリビューションを指しますwww.example.domain
。クラウドフロントドメインはすべてのHTTPトラフィックをHTTPSにリダイレクトします。
www.example.com A Simple *************.cloudfront.net.
S3では、バケットを作成しexample.com
、すべてのリクエストをリダイレクトするように設定しました[バケットはパブリックで空です
結果として、HTTPでは動作しますが、HTTPSではタイムアウトします。
http://example.com -> https://www.example.com
https://example.com -> ETIMEDOUT
http://www.example.com -> https://www.example.com
https://www.example.com -> https://www.example.com
この設定を修正するにはどうすればいいでしょうかhttps://example.com -> https://www.example.com
ベストアンサー1
問題の説明
したがって、理想的には、次のすべてが機能することを望みます。
1) https://example.com → https://www.example.com (naked to www)
2) http://www.example.com → https://www.example.com (http to https)
3) http://example.com → https://www.example.com (naked http to www https)
4) https://www.example.com → �� actually show the content as the canonical URL! ��
上記の要件3は、以下のように分類できることに注意してください。2つのステップこれは、#1 と #2 の組み合わせになります。
3B) http://example.com → http://www.example.com → https://www.example.com
これらはすべて→
HTTP 301 永続リダイレクトです。
要件
したがって、ここでは 3 つの部分が必要です。
- あURLリダイレクト(
example.com → www.example.com
) - [HTTPSサポート]アンSSL証明書www だけでなくネイキッド サブドメインもカバーします (Certification Manager では 2 つを 1 つにまとめることができます)
- [HTTPSサポート]あプロトコルリダイレクト(
http:// → https://
)
解決
このソリューションには、AWS の多くの部分が必要ですが、すべて無料です (または追加コストなし)。
ステップ1) S3にURLリダイレクトを作成する
S3静的ホスティングウェブサイトを作成し、リダイレクトする参考文献。
ノート:
- 公開アクセス可能であることを確認してください。
- URL が機能し、そこにアクセスすると実際にリダイレクトされるかどうかをテストします。(または、ターミナルで を使用してテストします
curl -v
) - 必ず完全なURLをテストしてください地域を含む(つまり
.s3-website-us-west-2.amazonaws.com
)
ステップ2) 証明書マネージャーでネイキッドドメインのSSL証明書を作成する
へ移動https://us-west-2.console.aws.amazon.com/acm/home?region=us-west-2#/(リージョンを希望のものに変更してください)、パブリック証明書をリクエストします。 と の両方を必ず入力してくださいexample.com
。Route www.example.com
53 で検証します。
ステップ3) CloudFrontでプロトコルリダイレクトを作成する
CloudFrontにアクセスしてディストリビューションを作成します視聴者プロトコルポリシー「Http => HTTPS リダイレクト」であり、そのオリジンは上記の S3 バケットの完全な URL です。
ノート:
- S3 を直接指定しないでください。S3 バケットの静的 Web サイトの完全な URL を指定します。
- キャッシュ ポリシーは「キャッシュなし」にすることができます。
- 代替ドメイン名は example.com にし、ステップ 2 の SSL 証明書を入力する必要があります。
- 「Origins」タブで、S3 の完全な URL パスを指していることを確認します。
ステップ4) Route53にDNSレコードを設定する
A
最後に、route53 DNS レコードに移動し、ステップ 3 の CloudFront ディストリビューションへのレコードとしてネイキッド ドメインをポイントするようにします。次のようになりますd21k2s1234123.cloudfront.net
。
じゃーん!