Apache SSL 在负载均衡器上丢失会话

Sal*_*uts 3 ssl load-balancing apache-2.2

我在负载平衡器后面有两个物理 Apache 服务器。应该设置负载平衡器,以便在第一次请求后始终将用户发送到同一物理服务器,以保留会话。

在我们将 SSL 添加到设置中之前,这对我们的 Web 应用程序运行良好。现在用户可以成功登录,看到主页,但是点击任何其他内部链接会导致用户退出。我将问题追溯到这样一个事实,即当服务器 1 执行初始身份验证时,单击内部链接会导致将请求发送到服务器 2。服务器 2 不与服务器 1 共享会话,并且用户被踢出。

我该如何解决?

我需要在两台服务器之间共享会话吗?如果是这样,你能给我指出一个很好的指南吗?

谢谢。

Mir*_*ici 6

如果您希望在负载均衡器中具有会话粘性,则必须终止负载均衡器上的 SSL。这意味着您必须将 SSL 证书安装到负载均衡器中。

另一种解决方案是将负载平衡器配置为对 SSL (HTTPS) 使用源 IP 粘性。

第三种解决方案是将会话保存在公共数据库(例如 memcached、SQL 数据库)中。对于 .NET,请参见:http : //support.microsoft.com/kb/317604 对于 PHP,请参见:http : //kevin.vanzonneveld.net/techblog/article/enhance_php_session_management/