当我将一个Spring应用程序部署到tomcat时,例如/rest
作为上下文,这个前缀被添加到spring hateoas生成的url中,例如, http://localhost:8080/games
到http://localhost:8080/rest/games
。但是,如果应用程序位于反向代理之后,则可能不需要这样做。 Spring hateoas尊重X-Forwarded-Host
标题,以便链接变得像http://foo.com/rest/games
,但它们应该像http://foo.com/games
。
我已经尝试查看标头和弹簧配置的堆栈溢出来执行此操作,但我只能找到添加前缀到链接的方法。我还发现了一个弹簧属性spring.data.rest.base-path
听起来应该有帮助(基于像Spring Boot HATEOAS links wrong when deployed on Tomcat这样的问题),但是我无法改变任何东西
我目前使用的解决方法是将spring应用程序作为tomcat上的root应用程序,但如果我想在同一台服务器上安装多个spring应用程序,那么这种方法效果不佳。我知道我可以做多个tomcat实例,但是我们当前的vps是相当瘦的。