Spring security 反向代理的KeyClope重定向url

Spring security 反向代理的KeyClope重定向url,spring-security,apache2,reverse-proxy,keycloak,Spring Security,Apache2,Reverse Proxy,Keycloak,我在一个虚拟机上运行keybeave keydape.domain.com 我有一个客户端应用程序,它运行在另一个VM上,这个VM运行在tomcat上,比如 app.domain.com 这是使用Spring安全性的,所以我在keydove.json中完成了如下配置 { "realm": "demo", "auth-server-url": "http://keycloak.domain.com:8080/auth", "ssl-required": "external",

我在一个虚拟机上运行keybeave

keydape.domain.com

我有一个客户端应用程序,它运行在另一个VM上,这个VM运行在tomcat上,比如

app.domain.com

这是使用Spring安全性的,所以我在keydove.json中完成了如下配置

    {
  "realm": "demo",
  "auth-server-url": "http://keycloak.domain.com:8080/auth",
  "ssl-required": "external",
  "resource": "app-client",
  "verify-token-audience": true,
  "credentials": {
    "secret": "9503a597-4c83-44ca-884e-e285891a2d32"
  },
  "use-resource-role-mappings": true,
  "confidential-port": 0
}
我们还有一些其他的服务,所以我们配置了ApacheReverseProxy,比如

main.domain.com

当我访问main.domain.com/app时,我们正在执行以下代理操作

ProxyPass /app http://app.domain.com/app nocanon
ProxyPassReverse /app http://app.domain.com/app
我们可以重定向到KeyClope,但重定向uri是
http://app.domain.com/app/sso/login
它应该通过代理


在哪里配置?还是我做错事了?他们是否有其他方法为我的应用程序实现OAuth?

我们通过在apache配置中设置
ProxyPreserveHost On
来解决这个问题:

<VirtualHost *:80>
ProxyPreserveHost On

代理主机
此集合是请求中的
主机
头,其余部分由适配器处理。
我们正在使用Servlet密钥斗篷适配器,但我想它也应该适用于其他适配器

我们通过在apache配置中设置
ProxyPreserveHost On
成功地解决了这个问题:

<VirtualHost *:80>
ProxyPreserveHost On

代理主机
此集合是请求中的
主机
头,其余部分由适配器处理。
我们正在使用Servlet密钥斗篷适配器,但我想它也应该适用于其他适配器

你找到解决办法了吗?我们面临着同样的问题。塞纳克斯!你找到解决办法了吗?我们面临着同样的问题。塞纳克斯!