2017-01-06 8 views
1

У меня проблема с обратным прокси-сервером с помощью zuul.Почему zuul не изменяет перенаправление IP-адреса службы dowstream в адрес http-заголовка?

Мое приложение имеет нисходящее обслуживание, которое использовало функцию весны для проверки подлинности. Этот проект перенаправляет на login.jsp, когда пользователь запрашивает Index.jsp.

Моя Zuul конфигурация Zuul проекта заключается в следующем:

zuul: 
    #addProxyHeaders : true 
    #ignoreSecurityHeaders: false 
    routes: 
    trp: 
     path: /app/** 
     url: http://192.168.251.141:5050/app 
server: 
    port: 80 

Но когда пользователь вызывает http://localhost/app/Index.jsp приложение перенаправлять http://192.168.251.141:5050/app/Login.jsp

После прибегая к помощи, что я нашел ответ, как это:

Content-Encoding gzip 
Content-Type text/html 
Date  Mon, 26 Dec 2016 09:02:44 GMT 
Location http://192.168.251.141:5050/app/Login.jsp 
Transfer-Encoding chunkedVary  
Accept-Encoding 
X-Application-Context application:80 
X-Content-Type-Options nosniff 
X-Frame-Options SAMEORIGIN 
X-XSS-Protection 1; mode=block 

Почему заголовок Locationhttp://192.168.251.141:5050/app/Login.jsp? И почему Zuul не меняет этот ip?

Эта конфигурация работает в nginx с использованием модуля proxy_redirect. Как изменить местоположение по маршрутам zuul?

ответ

0

Zuul не переписывает любые ответы по умолчанию. Ваш нисходящий сервис должен знать, как обращаться с заголовком X-Forwarded-Host, который добавляет и перенаправляет zuul. Другой вариант - написать zuul-фильтр, который переписывает заголовок Location.

+0

мой нисходящий сервис с использованием весенней безопасности для аутентификации. почему весенняя доза безопасности не справляется с этим? –

+0

как он узнает, куда перенаправить? вероятно, вопрос для весенней безопасности – spencergibb

+0

почему весна безопасности формы регистрации переадресация доза не переписывать местоположение респондента с X-Forwarded-Host? –