0

我有以下设置:

  1. 代理服务器:https ://proxy-server.com
  2. 应用服务器:https ://app-server.com
  3. 和一个 CAS (sso) 服务器:https ://sso-server.com

我可以得到以下工作:

https://proxy-server.com/cas/login?service=https://app-server.com/app

但是这个 URL 的问题是它暴露了实际的应用服务器,它位于代理服务器后面。

理想情况下,我想要以下内容:

https://proxy-server.com/cas/login?service=https://proxy-server.com/app

我的问题是:有没有办法在 URL 中隐藏(使用 post、加密 targetService 部分、在代理端回调或......)app-server.com?因为我前面有一个代理服务器,所以我不想公开实际的应用服务器名称。

谢谢

4

1 回答 1

2

如果您正在运行 Apache mod_proxy 之类的东西,https://proxy-server.com那么您应该能够将您的应用程序隐藏在它后面。根据您的示例,由于您将 cas 登录网址声明为https://proxy-server.com/cas/login

遵循相同的想法,您的应用程序可以使用https://proxy-server.com/app

ProxyPass          /cas   https://sso-server.com/cas 
ProxyPassReverse   /cas   https://sso-server.com/cas
ProxyPass          /app   https://app-server.com/app  
ProxyPassReverse   /app   https://app-server.com/app 

您可能必须修改您的 serviceUrls,以便它们与 proxy-server.com 相关

于 2012-09-07T17:39:23.030 回答