Реализация переписывания URL-адреса в Sping Boot + Cloud - PullRequest
0 голосов
/ 05 февраля 2019

Мне нужно реализовать мое приложение весенней загрузки + облачный шлюз, чтобы оно служило прокси для нескольких правил, включающих несколько сайтов, таких как:

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 подходящим инструментом для этого?Пожалуйста, покажи мне правильное направление.ТИА!

...