エッジサーバに独自ドメインを使用する方法について

0

はじめまして!

今までオンプレミスで運用していたサイトを、初めてAWSに移行することになったのですが、
cloudfrontで配信する際のエッジサーバのドメインを、サブではなく独自ドメインにしたいと考えています。

理由は外部サービスを利用して、サイトを海外向けに自動翻訳しているため、極力オンプレミスのときと同じドメインのまま移行したいためです。

データはEC2上で実行し、ドメインはRoute53で管理、ACMで発行した証明書を利用してSSL化したのちに、CloudFrontで配信を予定しています。

現状はEC2に独自ドメインを適用して公開するところまではできています。
自力で一か月以上探してみているのですが、
エッジサーバ側で独自ドメイン、オリジン側でサブドメインを使用する方法が見つかりません。

それぞれ別のドメインを用意する以外で何か方法はないでしょうか?

よろしくお願いいたします。

ymikuni
質問済み 4年前306ビュー
4回答
0

独自ドメイン

これを Zone Apex (example.com) と仮定した場合ですが、以下で実現できないでしょうか。

Route53 に以下の 2 レコードを作成

  • example.com A <CloudFront Distribution へのエイリアス>
  • ec2.example.com A <EC2 インスタンスのパブリック IP アドレス>

CloudFront Distribution の Alternate Domain Names (CNAMEs) に以下を設定

  • example.com

CloudFront Distribution の Origin Domain Name に以下を設定

  • ec2.example.com
semnil
回答済み 4年前
0

ご返信ありがとうございます。

今まで独自ドメインと呼んでいたものが Zone Apex (example.com) になります。
ネットワーク周りを勉強して日が浅いため、用語をまだ知りませんでした。

ご提案いただいた前述の設定を試してみましたが、
一瞬表示されたようだった(CSSが上手く読み込めていなかったように見えました)のですが、
その後何度か再読み込みをするとすぐに504の下記のエラーになってしまいました。

504 ERROR
The request could not be satisfied.
CloudFront attempted to establish a connection with the origin, but either the attempt failed or the origin closed the connection. We can't connect to the server for this app or website at this time. There might be too much traffic or a configuration error. Try again later, or contact the app or website owner.
If you provide content to customers through CloudFront, you can find steps to troubleshoot and help prevent this error by reviewing the CloudFront documentation.
Generated by cloudfront (CloudFront)

設定内容
Route53 のレコード

  • example.com A <CloudFront Distribution へのエイリアス>
  • ec2.example.com A <EC2 インスタンスのパブリック IP アドレス>
  • example.com NS <example.comのNSレコード>
  • example.com SOA
  • SSL証明書から追加したCNAME
    CloudFront Distribution の Alternate Domain Names (CNAMEs) に以下を設定
  • example.com
    CloudFront Distribution の Origin Domain Name に以下を設定
  • ec2.example.com

レイアウト崩れはおそらく後々対応できると思うのですが、
すぐに504エラーになってしまった原因がわかりません。

もう少し調べてみたいと思います。

ymikuni
回答済み 4年前
0

何度か再読み込みをするとすぐに504

応答に時間がかかりすぎて発生している可能性が高いのではないかと推測しています。
30 秒を越えるような状況は発生していないでしょうか。

https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/http-504-gateway-timeout.html#http-504-gateway-timeout-slow-application

semnil
回答済み 4年前
0

返信ありがとうございます。

レイアウト崩れが確認された初回読み込み時の場合はたしかに30秒以上かかっていたような気がします。
その後、再読み込みをかけると表示されていた画面から前述のエラーになってしまい、キャッシュを消して読み込み直しても改善できませんでした。

読み込み時間に関係するかは不明なのですが、
これ以前にも週一回程度の頻度で、それまで普通に表示できていたページがFatal error: Out of memoryのエラーが発生することが度々ありました。
ネットで調べて、memory_limitの変更等は試してみたのですが、改善には至りませんでした。
この他に起きているエラーでは、Error establishing a database connection のデータベース接続エラーが時々発生し、都度インスタンスの再起動で対応している形です。

これらを鑑みると、やはり読み込みに時間がかかりすぎてエラーになっているのかもしれませんね。

ymikuni
回答済み 4年前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン