2

У меня есть API-шлюз, который является одним из многих источников, лежащих в основе дистрибутива CloudFront, который я создал. Я пытаюсь передать некоторые заголовки в исходное (Host, Origin, среди других). Когда я не пересылаю какие-либо заголовки, запросы попадают в API Gateway просто отлично. Однако, как только я разрешаю переадресацию заголовков в дистрибутиве CloudFront (либо All, либо Whitelist), Gateway API больше не может обрабатывать запросы. Я получаю следующую ошибку:AWS API Gateway за CloudFront, переадресация заголовков?

ERROR 

The request could not be satisfied. 

CloudFront wasn't able to connect to the origin. 

Любые советы по устранению этой проблемы?

+0

У вас включена регистрация шлюза API? Я бы проверил журналы шлюза API, чтобы узнать, не регистрирует ли он какие-либо ошибки, которые могут быть полезны здесь. –

+0

Я вижу, что в CloudWatch есть группа журналов, но в ней нет потоков – Marty

+1

Конечно, вы не можете переслать заголовок 'Host:' из исходного запроса на шлюз API. Это не имеет смысла. API-шлюз должен видеть имя хоста, которое он назначил вашей конечной точке в заголовке хоста входящего запроса. Какие другие заголовки нарушают вашу конфигурацию, если вы включите их? –

ответ

2

Как уже отмечалось выше, вы не можете переадресовать заголовок хоста на начало Gateway API. Без заголовка Host API Gateway не знает, какой API вызывается.

+2

Можно ли использовать лямбда-кромку, чтобы сопоставить начальный узел с чем-то вроде X-Forwarded-Host? – Petrogad