Переадресация трафика из одного домена в другой незаметно с помощью CloudFront - PullRequest
0 голосов
/ 04 июля 2019

У нас есть два домена:

  • www.example.com
    • полное приложение администратора (доступ только для менеджеров и администраторов)
    • стоит за оригинальным дистрибутивом CloudFront
    • активы, размещенные на amazon s3 в качестве статического веб-сайта
    • api, размещенный на эластичном бобовом стебле (ec2, elb, eb)
  • www.new-example.com
    • небольшое приложение для техников для выполнения одной функции (загрузка документа)
    • стоит за новым дистрибутивом CloudFront
    • новый источник и поведение для направления api / * к тому же источнику ELBчто www.example.com перенаправляет на
    • активы, размещенные на amazon s3 в качестве статического сайта

Технические специалисты будут использовать www.new-example.com,и мой клиент не хочет, чтобы они знали о www.example.com.

www.new-example.com не имеет API;вместо этого я хотел бы использовать существующий API на www.example.com.

Используя CloudFront, как я могу перенаправить запросы с www.new-example.com/api/* на www.example.com/ api / * способом, который никогда не предоставляет URL-адрес администратора?

Обновление 1

Это наш запрос авторизации с сайта администратора, который успешно возвращает правильные данные:

curl -X POST -H "Content-Type: application/json" https://www.example.com/api/user/authenticate -d '{"email":"me@example.com", "password":"foobar1!"}'

Когда я отправляю, используя новый URL, через некоторое время CloudFront выдает 504:

curl -X POST -H "Content-Type: application/json" https://www.new-example.com/api/user/authenticate -d '{"email":"me@example.com", "password":"foobar1!"}'

Я знаю, что поведение CF работает, потому что, если я заменю 'api'с gibberish он запускает поведение по умолчанию (*) (принимает только GET / HEAD), которое вызывает другую ошибку.

Теперь мне просто нужно выяснить, как предотвратить 504

...