为什么我的两个Laravel网站的会话有冲突?

时间:2015-02-25 17:36:44

标签: php session cookies laravel-4 docker

我在内联网上的服务器上部署了一个Laravel 4.2应用程序,名为" Dashboard"。它可以通过URL http://dashboard.mydomain.local/访问,并使用" native"会话存储的驱动程序。

我正在重新配置应用程序以在Docker容器中运行。可以通过http://dbdock.mydomain.local/访问新站点,并在不同的服务器上运行。新网站使用" redis"用于sesson存储。

问题在于:

如果我已登录某个网站然后登录另一个网站,那么我就会退出另一个网站。

以下是我尝试的内容:

  • 我更新了config/app.php文件中的应用程序网址。
  • 我更改了加密密钥。
  • 我在config/session.php
  • 中更改了会话Cookie名称

在我看来,在这种情况下会话应该严格分开,因为a)会话存储是不同的(文件系统与redis); b)会话存储在不同的服务器上; c)两个站点的URL不同; d)会话cookie名称不同。

我无法理解这两个网站是如何相互冲突的。谁能向我解释在这种情况下发生了什么?

编辑我应该提到这两个应用程序正在为用户数据库使用相同的数据库服务器。这是为了转移远离原始服务器(将在不久的将来退役)。

1 个答案:

答案 0 :(得分:3)

我知道这有点旧了但是我在两个Laravel项目中遇到了同样的问题,当我在config / session.php中为其中一个更改会话cookie名称时,问题就解决了。

我认为您应该删除浏览器Cookie。