在nginx反向代理后面的不同服务器之间共享会话

时间:2015-06-16 11:49:32

标签: session nginx proxy reverse

想知道我们是否可以在Nginx反向代理后面的两台服务器(运行不同的代码)之间共享会话数据。

确切地说,我们在Apache服务器上运行PHP的遗留应用程序。我们正在更新某些功能并仅在单独的服务器(nginx)上托管该功能。两个应用程序都更新相同的DB。

nginX使用负载平衡/反向代理URL重写技术,根据用户使用的URL路径决定将客户端发送到哪个服务器。

  • 因此,一个人可以在他的虚拟篮子(在会话中举行)中添加项目 新的服务器应用程序。
  • 然后他决定编辑其他服务器上的个人信息(Legacy)。
  • Nginx使用它的反向代理/负载平衡魔术来根据应用程序的可用位置决定将人员发送到哪个服务器。

问题是,如何在一个应用服务器上创建的会话可用于其他应用服务器?是否可以设置反向代理来存储所有会话数据以及如何存储。请指出正确的方向,你可以帮助谷歌链接。

1 个答案:

答案 0 :(得分:0)

你的问题有几个可能的答案。这一切都取决于应用程序的设计方式。

可能的情况是将会话信息保存在不同Web头之间共享的数据库中。通过这种方式,客户端一旦通过身份验证,就会检索其“会话状态”,无论他在最终服务器群集后端访问哪个服务器。

同样,这在很大程度上取决于应用程序的设计方式。

我认为仅通过配置反向代理引擎,您就可以对旧的遗留应用程序做一些魔术。

最后,会话由应用程序服务器而不是代理前端处理。