При исследовании того, как ограничить доступ к S3 в CloudFront с помощью Origin Access Identity для приложения Amplify, я осознал важное различие в двух подходах к размещению приложения Amplify :
- Использование AWS консоли Amplify или
- Использование S3 и CloudFront (стадия prod)
Раньше я использовал консоль Amplify только для связывания пользовательский домен в мое приложение. Я не понимал, почему мне не удалось найти дистрибутив CloudFront, о котором говорилось в Amplify Console Hosting FAQ .
AWS Управляемое распространение CloudFront
Я узнал что после добавления управляемого пользовательского домена Route 53 в мое приложение Amplify через консоль Amplify, автоматически был создан AWS Managed CloudFront . Этот дистрибутив CloudFront не отображается в вашей учетной записи, и вы не можете напрямую управлять им. Я впервые заметил это, когда увидел запись псевдонима в Route53, указывающую на раздачу CloudFront, которой нет в моей учетной записи после добавления личного домена.
Пользовательский домен имеет приоритет
Кажется, что как только вы добавил собственный домен через консоль Amplify, а затем в добавить хостинг с помощью интерфейса командной строки Amplify не аннулирует AWS управляемый дистрибутив CloudFront
Что лучше?
I не нашел никаких указаний в документации относительно того, какая стратегия хостинга лучше. Я предполагаю, что одним из преимуществ использования личного домена Amplify может быть то, что управляемый дистрибутив CloudFront AWS создается с использованием оптимальных настроек для вашего приложения. Этот способ также означает, что Amplify эффективно заботится о недействительности кеша.