如何正確地將網域新增至 Heroku

如何正確地將網域新增至 Heroku

我是一名軟體開發人員,我希望購買一個域名,以便可以託管我目前和未來的專案。我已經做了研究,但由於我仍然不確定我是否正確理解這一點,所以我在這裡尋求幫助。

假設我購買了 example.com 網域。由於 DNS 系統是分層的,我現在還擁有 example.com 的所有子網域,例如 a.example.com、b.example.com 和 abcexample.com。因此,對於我想要部署的每個新項目,我將能夠分配一個projectname.example.com 網域。

為了行使這種所有權,我可以透過註冊商存取 .com 網域註冊表的 NS 記錄,這樣我就可以設定負責解析我的網域的 DNS 伺服器。預設情況下,這將是註冊商為我提供的伺服器。

當我將應用程式部署到雲端時,我將獲得一個 URL,例如 project1.heroku.com。要重定向流量,我只需建立從project1.example.com到project1.heroku.com的CNAME或ALIAS記錄

但根據 Heroku 文檔,我需要將網域新增至 Heroku 本身,然後將 CNAME 記錄建立到 url,這樣做時我將得到該記錄。為什麼會這樣,為什麼正常的 url 不起作用?還是我真的不明白什麼?

答案1

這是一個非常常見的誤解。 ACNAME不執行HTTP重定向也不建立 Web 伺服器的別名。它只是告訴我們A可以在其他地方找到DNS記錄。

Web 伺服器僅透過標頭Host取得瀏覽器網址列中的原始主機名稱。 Web 伺服器與 DNS 基礎架構沒有任何連接,即它CNAME根本不檢查任何記錄。因此,Web 伺服器需要了解主機名稱(即配置的屬性),以便提供正確的內容(虛擬主機)。

相關內容