Вопрос или проблема
ОК, я использую AWS Route 53 и не хочу переходить на Azure DNS, но хочу использовать Azure Front Door для моего корневого домена / Apex домена (например, https://example.com
без www.
).
Как я могу этого достичь? Azure Front Door, похоже, не имеет необязательной опции CNAME. Я слышал что-то о создании записи Alias. Могу ли я алиасировать корень домена на www.example.com
в AWS Route 53? Если да, то как это будет работать? Создаст ли это риск простоя?
Есть ли другой, лучший способ сделать это?
Вы когда-нибудь решили эту задачу? У меня та же ситуация, и я протестировал это с DNS-зоной в Cloudflare, которая предлагает эту услугу. Это сработало нормально. Тем не менее, я надеялся, что зона будет размещена в Route 53. Я вижу, что у них есть запись alias, которая по-прежнему является A-записью, но они алиасируют это в бэкенде с их размещенными службами. Я просто не мог найти никаких документов, которые бы подтверждали, что они поддерживают ресурсы не AWS. Я думаю, я могу попробовать и посмотреть, сработает ли это.
Мы столкнулись с похожей проблемой недавно, когда пытались перенаправить весь трафик с нашего корневого домена на Azure Front Door (AFD). К сожалению, настройка позволяла нам перенаправлять трафик только либо на IP-адрес, либо на ресурс AWS.
Чтобы обойти это, мы создали корзину S3 с названием, соответствующим нашему корневому домену (например, example.com), и настроили ее как статический веб-сайт, который выполняет 301 перенаправление на наш URL AFD. Как только корзина была настроена, мы могли выбрать эту корзину S3 в качестве ресурса AWS для перенаправления запросов.
Это не самое элегантное решение, но оно подошло для нашего случая использования.
Ответ или решение
Чтобы использовать Azure Front Door для корневого домена (apex domain, например, https://example.com), когда ваш DNS управляется через AWS Route 53, вам нужно будет применять несколько решений, так как Azure Front Door требует, чтобы корневой домен указывал на CNAME.
Способы решения задачи:
-
Использование S3 для редиректа:
Это один из наиболее распространенных подходов. Вы можете создать S3-бакет с именем, соответствующим вашему корневому домену, например,example.com
. Затем выполните следующие шаги:-
Создайте S3-бакет:
- Зайдите в консоль AWS S3.
- Создайте новый бакет с именем
example.com
. - Включите параметр "Статический сайт" в настройках бакета и настройте редирект на ваше URL Azure Front Door (например,
https://www.example.com
).
-
Настройка записи в Route 53:
- Перейдите в вашу Hosted Zone в Route 53.
- Добавьте новую запись типа A с именем
example.com
, которая будет указывать на ваш S3-бакет (выбирайте "Alias" и укажите S3-бакет).
Этот способ позволит вам создать 301 редирект с корневого домена на ваш Azure Front Door, минимизируя возможное время простоя.
-
-
Использование записей CNAME:
Azure Front Door не поддерживает прямые A или AAAA записи для корневого домена. Но вы можете использовать поддомен (например,www.example.com
) для настройки Azure Front Door и настроить редирект с корневого домена на поддомен.- Создайте CNAME запись для
www
в Route 53, указывающую на ваше Azure Front Door. - Создайте редирект с корневого домена
example.com
наwww.example.com
, например, используя тот же S3-бакет, как описано выше.
- Создайте CNAME запись для
Важно обратить внимание:
- Риск простоя: При настройке редиректа с помощью S3, простоющее время должно быть минимальным. Однако, прежде чем применять изменения, рекомендуется делать тестирование в промежуточной среде, чтобы избежать потенциальных ошибок.
- Документация: AWS не предоставляет прямую поддержку для использования Alias для не-AWS ресурсов, однако ваш S3-бакет будет являться AWS ресурсом, что позволяет эффективно использовать его для редиректа.
Такой подход позволяет сохранить управление DNS в Route 53 и при этом использовать Azure Front Door для обеспечения гибкости и производительности. Если у вас есть дополнительные вопросы или необходима помощь на каком-либо этапе, не стесняйтесь обращаться!