在多个子域之间共享会话

Sharing session between multiple subdomains

我在同一域的不同子域上有多个前端和后端应用程序 运行。在主要的前端应用程序上,我想构建一个东西来在子域之间切换 但同时保持会话 .

我试过:

但还是想不通:

  1. 是否可以跨多个子域共享一个会话?

  2. 跨多个子域共享会话的最佳解决方案是什么?

我使用的技术:

要跨子域共享会话,您需要配置两件事。

  1. 您需要为会话 cookie 进行适当的 cookie 设置,以便浏览器将相同的会话 cookie 发送到两个子域。这涉及将 cookie 上的 domain 属性设置为根域。您可以在快速会话配置的 cookie 选项中进行设置。

  2. 您需要确保每个子域的服务器都可以访问相同的会话存储。如果每个子域实际上是同一台服务器,那很容易。但是,如果它是不同的服务器,那么您将需要一个共享会话存储,使用某种类型的共享数据库(redis、mongodb 等)。许多不同的数据库都有会话存储实现。