Spring Web 代理背后的云数据流
Spring Cloud Data Flow behind a web proxy
我想将 SCDF 的仪表板放在 zuul 后面(或者只是假设任何代理,真的),但是当我这样做时,Spring云数据流将重定向到它认为它是实际主机的地方。
示例:
Zuul 是 http://zuul/. It's configured to route any /dashboard requests to http://scdf/host
在浏览器中,我转到 http://zuul/dashboard。
一旦请求通过 zuul 路由,然后到达 SCDF,SCDF 将重定向到 http://scdfhost/dashboard,这在锁定环境中不起作用。 (scdfhost 将不会通过外部可见)
我已经寻找过任何可以在这里使用的属性,但我想不出来。
有人试过吗?或者提示?
感谢您的提问!问题是重定向 302
从 http://localhost:9393/dashboard
到仪表板的绝对 URI(http://localhost:9393/dashboard/index.html). If you are running Spring Cloud Data Flow Server behind a proxy server, such as Zuul,您必须指定 属性
server.use-forward-headers
并将其设置为 true
。这样 Spring Boot 就知道来自代理的 HTTP 转发 headers。另请参阅 Spring Boot reference guide ("Running Behind a Front-end Proxy Server")。
您可以在以下位置找到基本示例:
https://github.com/spring-cloud/spring-cloud-dataflow-samples/tree/master/dataflow-zuul
为了阐明参考文档,我创建了一个 follow-up 问题:
https://github.com/spring-cloud/spring-cloud-dataflow/issues/2929
我想将 SCDF 的仪表板放在 zuul 后面(或者只是假设任何代理,真的),但是当我这样做时,Spring云数据流将重定向到它认为它是实际主机的地方。
示例: Zuul 是 http://zuul/. It's configured to route any /dashboard requests to http://scdf/host
在浏览器中,我转到 http://zuul/dashboard。
一旦请求通过 zuul 路由,然后到达 SCDF,SCDF 将重定向到 http://scdfhost/dashboard,这在锁定环境中不起作用。 (scdfhost 将不会通过外部可见)
我已经寻找过任何可以在这里使用的属性,但我想不出来。
有人试过吗?或者提示?
感谢您的提问!问题是重定向 302
从 http://localhost:9393/dashboard
到仪表板的绝对 URI(http://localhost:9393/dashboard/index.html). If you are running Spring Cloud Data Flow Server behind a proxy server, such as Zuul,您必须指定 属性
server.use-forward-headers
并将其设置为 true
。这样 Spring Boot 就知道来自代理的 HTTP 转发 headers。另请参阅 Spring Boot reference guide ("Running Behind a Front-end Proxy Server")。
您可以在以下位置找到基本示例:
https://github.com/spring-cloud/spring-cloud-dataflow-samples/tree/master/dataflow-zuul
为了阐明参考文档,我创建了一个 follow-up 问题:
https://github.com/spring-cloud/spring-cloud-dataflow/issues/2929