Мне нужно реализовать мое приложение весенней загрузки + облачный шлюз, чтобы оно служило прокси для нескольких правил, включающих несколько сайтов, таких как:
usecase 1: http://gateway/admin/** <-> http://site1/** (an admin site)
usecase 2: http://gateway/rest/** <-> http://site1/rest/** (a REST API)
usecase 3: http://gateway/<everything else>/** -> http://site2/**
До сих пор я экспериментировал с netflix-zuul, как описанов уроках spring.io, например:
zuul.routes.admin.path=/admin/**
zuul.routes.admin.url=http://site1
zuul.routes.rest.path=/rest/**
zuul.routes.rest.url=http://site1/rest
ribbon.eureka.enabled=false
Работает простое сопоставление 1-к-1, например, http://gateway/rest/foo <-> http://site1/rest/foo. Этого может быть достаточно только для usecase# 2.
В чем я не уверен, так это в том, как прокси-сервер администрирования на том же хосте, используя префикс («admin»), как в сценарии использования # 1 (т.е. внутренние ссылки также должны быть переведены)?
Кроме того, позже мне нужно перехватить все остальное в сценарии использования # 3 и правильно переслать их на второй сайт "site2".
Является ли Zuul подходящим инструментом для этого?Пожалуйста, покажи мне правильное направление.ТИА!