Маршрутизация к REST API на ElasticBeanstalk через CloudFront

#amazon-web-services #amazon-elastic-beanstalk #amazon-cloudfront

Вопрос:

У нас есть такая установка, где

  • Экспресс-API, работающий в среде эластичных бобовых стеблей за ALB.
  • Корзина S3 для статического содержимого.
  • Облачный фронт как точка доступа ко всему.

По какой-то причине CloudFront просто отказывается возвращать ответ из API.

Шаблоны путей настраиваются следующим образом:

Скриншот

где APIOrigin указывает на ALB перед средой бобового стебля.

Единственное, что я получаю от конечной точки xxxx.cloudfront.net/api/health это: Извините, пока не удается встроить изображения

Тем не менее, вызов addess {loadbalancerUrl}/health возвращает правильный ответ.

Ответ xxx.cloudfront/api содержит заголовки

 Access-Control-Allow-Origin

Access-Control-Allow-Headers

Access-Control-Allow-Methods
 

точно так же, как их устанавливает Express API в Beanstalk, поэтому там существует некоторая связь, но ответа нет. (Ожидается ответ JSON)

Мы избегаем использования API-шлюза по соображениям компании.

Что я могу попробовать дальше?

Комментарии:

1. Попробуйте изменить шаблон пути на /api/* .