我尝试使用前缀,例如配置Spring Cloud Data Flow(2.0.0.m2):
server.servlet.context-path=/scdf
这不起作用,因为当您转到http://localhost:9393/scdf/dashboard
时,加载的JavaScript会尝试转到/security/info
(而不是/scdf/security/info
)。
我非常有信心这是一个错误;我一直在这里浏览UI代码:https://github.com/spring-cloud/spring-cloud-dataflow-ui,但是除了代码修复,别无其他想法。
但是我先在这里问!
答案 0 :(得分:1)
是的server.servlet.context-path
仅配置后端Spring App。无论如何,我都找不到在前端和后端都能很好地做到这一点。如果使用docker compose等运行它,则可以代理所有请求。否则,我会看一下代码库,并且我认为配置前端的最简单方法是编辑proxy.conf.json
文件,并将/scdf/
附加到所有内容上。不过并不理想。
答案 1 :(得分:1)
这确实是当前的限制。 RESTful端点和仪表板均从同一根目录提供。默认情况下,我们重定向到/dashboard
,以便即使设置了不同的上下文路径也可以冲突并享有优先权。
我们最终希望将所有RESTful端点移至/api
,并将仪表板移至/dashboard
,以便能够将它们完全分开。
我们正在通过spring-cloud/spring-cloud-dataflow-ui#747和spring-cloud/spring-cloud-dataflow#1581跟踪这项工作。
答案 2 :(得分:0)
经过一些研究,要变通解决此问题并在Proxy后面运行数据流服务器,将创建一个DNS条目(例如:scdf.example.com),并根据DNS而非上下文路径配置代理规则。希望这会有所帮助!