Herokuにドメインを適切に追加する方法

Herokuにドメインを適切に追加する方法

私はソフトウェア開発者で、現在のプロジェクトと将来のプロジェクトをホストできるようにドメインを購入したいと考えています。調査はしましたが、まだ正しく理解できていないため、ここで助けを求めています。

たとえば、example.com ドメインを購入したとします。DNS システムは階層型なので、a.example.com、b.example.com、abcexample.com など、example.com のすべてのサブドメインも所有することになります。そのため、展開する新しいプロジェクトごとに、projectname.example.com ドメインを割り当てることができます。

この所有権を行使するために、レジストラを通じて .com ドメイン レジストリの NS レコードへのアクセス権が付与され、ドメインの解決を担当する DNS サーバーを設定できます。デフォルトでは、これはレジストラが提供したサーバーになります。

アプリケーションをクラウドにデプロイすると、たとえば project1.heroku.com のような URL が提供されます。トラフィックをリダイレクトするには、project1.example.com から project1.heroku.com への CNAME または ALIAS レコードを作成するだけです。

しかし、Heroku のドキュメントによると、ドメインを heroku 自体に追加し、その際に提供される URL に CNAME レコードを作成する必要があります。なぜそうなるのでしょうか。また、通常の URL が機能しないのはなぜでしょうか。それとも、私が本当に何かを理解していないのでしょうか。

答え1

これはよくある誤解です。AはCNAMEHTTPを実行しませんリダイレクションまた、Web サーバーへのエイリアスも作成しません。DNSAレコードが他の場所にあることを単に伝えるだけです。

Web サーバーは、ヘッダーを介してブラウザーのアドレス バーにある元のホスト名のみを取得しますHost。Web サーバーは DNS インフラストラクチャとの接続を持たないため、CNAMEレコードをまったくチェックしません。したがって、Web サーバーは、正しいコンテンツ (仮想ホスト) を提供するために、ホスト名 (つまり、構成されたプロパティ) を認識する必要があります。

関連情報