Как правильно связать Heroku, CloudFront, Route53 с пользовательским SSL? - PullRequest
1 голос
/ 08 ноября 2019

Я пытаюсь настроить веб-приложение, размещенное на Heroku. DNS-маршрутизация осуществляется через AWS Route53 и распространяется через CloudFront. Я купил свой собственный сертификат SSL для, скажем, www.example.com.

Все это работает, за исключением того, что я хочу иметь возможность использовать субдомены, а затем показывать другое приложение в Heroku. Это также работает локально. Однако, если я внесу в белый список заголовки хостов в CloudFront, чтобы я смог выполнить эту маршрутизацию, Heroku перенаправит на неизвестное приложение.

AWS говорит, что это неверная конфигурация на конце Heroku, и Heroku заявляет, что я неправильно настроил маршрутизацию DNSи необходимо применить созданный CNAME к Route53. Но этот CNAME направляется в CloudFront.

Итак, сейчас настройка:

Heroku

Hosting Web App. Автоматическое управление сертификатами включено. Домен не добавлен.

heroku config

Route53

CNAME указывает на CloudFront dist. А также А и АААА. Также для * wildcard

Route53 config

CloudFront

Источник указывает на развертывание Heroku. Имеет CNAMES для пользовательских URL-адресов доменов, таких как * .example.com

CloudFront dist config Origin config

Мой собственный пользовательский SSLс поддержкой подстановочных знаков * был загружен в AWS CM и добавлен в CloudFront. Это работает, но я могу себе представить, что на каком-то этапе я неправильно настроил это.

Почему я отправляю заголовок хоста, который мое развертывание Heroku перенаправляет в неправильное приложение?

1 Ответ

0 голосов
/ 11 ноября 2019

После общения с Heroku и ссылки на этот пост. Мне стало ясно, что Heroku и Route56 / CloudFront имеют особые отношения и не требуют, чтобы ссылка на CNAME, созданная Heroku, добавлялась в AWS, и проверкой Heroku можно пренебречь.

Запуск следующегов работающем CLI, а заголовки Host не получены, и перенаправление на сторону Heroku не происходит.

heroku domains:add example.com -a heroku-app-name
heroku domains:add *.example.com -a heroku-app-name
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...