Как правильно добавить домен в Heroku

Как правильно добавить домен в Heroku

Я разработчик программного обеспечения и хочу купить домен, чтобы разместить свои текущие и будущие проекты. Я провел исследование, но поскольку я все еще не уверен, правильно ли я все понял, я прошу здесь о помощи.

Допустим, я купил домен example.com. Поскольку система DNS иерархическая, я также владею всеми поддоменами example.com, такими как a.example.com, b.example.com и abcexample.com. Таким образом, для каждого нового проекта, который я хочу развернуть, я смогу выделить домен projectname.example.com.

Для осуществления этого права собственности мне предоставляется доступ к записи NS реестра домена .com через регистратора, чтобы я мог задать DNS-сервер, ответственный за разрешение моего домена. По умолчанию это будет сервер, который мне предоставил регистратор.

Когда я разверну приложение в облаке, я получу URL, например project1.heroku.com. Чтобы перенаправить трафик, я могу просто создать записи CNAME или ALIAS с project1.example.com на project1.heroku.com

Но согласно документации Heroku, мне нужно добавить домен в сам heroku, а затем создать запись CNAME для url, который мне будет предоставлен при этом. Почему так и почему обычный url не будет работать? Или я действительно чего-то не понимаю?

решение1

Это очень распространенное заблуждение. A CNAMEне выполняет HTTPперенаправлениени создать псевдоним для веб-сервера. Он просто сообщает, что Aзапись DNS может быть найдена в другом месте.

Веб-сервер получает только оригинальное имя хоста в адресной строке браузера через заголовок Host. Веб-сервер не имеет никакого соединения с инфраструктурой DNS, т.е. он CNAMEвообще не проверяет никаких записей. Поэтому веб-сервер должен знать имя хоста (т.е. настроенное свойство), чтобы обслуживать правильный контент (виртуальный хост).

Связанный контент