Django Zappa генерирует облачный фронт генерирует ошибку 403 - PullRequest
2 голосов
/ 10 мая 2019

Я запускаю проект Django, развернутый на AWS lambda с использованием безсерверной платформы Zappa.Доступ к нему можно получить по случайно сгенерированной ссылке из AWS API Gateway, например: -

random-generated-link.aws.amazon.com / production

У меня естьтакже создал SSL-сертификат из ACM и проверил его в моем домене, скажем

example.com

Теперь, когда я запускаю zappa certify, эта команда успешно сертифицирует мой домен исоздает настраиваемый домен в консоли API-шлюза со следующими конфигурациями: -

Конфигурация конечной точки оптимизирована Edge

Имя целевого домена d25ihv8a5022zi.cloudfront.net

Идентификатор размещенной зоны A2FDTNGATAQYW6

Сертификат ACM example.com (c504428e)

Теперь мне нужно указать свой доменимя example.com до randomly-generated-link.aws.amazon.com/production, поэтому я обновил свои записи на Godaddy с помощью CNAME следующим образом: -

TYPE - CNAME NAME - example.com VALUE - d25ihv8a5022zi.cloudfront.net TTL - 1 ЧАС

ОЖИДАЕМЫЙ РЕЗУЛЬТАТ - My applПоказ, который работает на randomly-generated-link.aws.amazon.com, показывается доступным с example.com.

ЧТО Я ПОЛУЧАЮ - 403 ОШИБКА Запрос не может быть удовлетворен.Плохой запрос.Сгенерировано с помощью облачного фронта (CloudFront)

РЕДАКТИРОВАТЬ: - Таким образом, я избавляюсь от созданного zappa собственного домена и нового дистрибутива облачного фронта вручную следующим образом: -

Способ доставки - Имя веб-домена -d35ihv8a5022fe.cloudfront.net происхождение - random-generated-link.aws.amazon.com/production cNAMES - example.com Состояние - состояние развертывания - включено

Я сделал это, потому что сгенерированное zappa распределение облачного фронта скрытов консоли AWS.Однако я заметил, что сгенерированная Zappa конечная точка распространения дает запрет, когда я проверяю адрес в браузере, а вновь созданная конечная точка распространения перенаправляет на мое приложение.

Тем не менее, переход на example.com дает мне ошибку 403.

Ответы [ 3 ]

0 голосов
/ 10 мая 2019

Это больше не проблема DNS. Может ли это быть из-за того, что Edge optimized использует CloudFront и требуется некоторое время для развертывания нового пользовательского домена во всех пограничных местоположениях? Как долго вы ждали после включения пользовательского доменного имени?

0 голосов
/ 12 мая 2019

Видимо, у меня все заработало. Серверы имен моих доменов перенесены на route53 и в zappa_settings.json добавлены

"route53_enabled": true

и повторная сертификация с использованием команды zappa certify production.

Пришлось подождать 40 минут и все заработало!

Хотя я понятия не имею, почему это не работает, когда управление доменом осуществляется с Godaddy. Допустим, в настоящее время route53 - это быстрый обходной путь.

0 голосов
/ 10 мая 2019
  • Во время отладки мне нравится сохранять TTL как можно короче. Я бы установил CNAME TTL на 1 минуту
  • Убедитесь, что в именах пользовательских доменов api-gateway указан ваш домен и правильно настроены сопоставления базовых путей.

Отображения базовых путей

Путь /
Пункт назначения [лямбда-конечная точка]. [Производство] * * 1 010

Также может быть хорошей идеей разместить домен, если это возможно, на маршруте53

...