我可以为两个Laravel项目进行相同的会话吗?

时间:2017-09-20 05:31:35

标签: php laravel session laravel-5.1

我在同一台服务器( mydomain.com sub.mydomain.com )中有两个laravel项目,它们具有不同的数据库,但用户ID是相同的。

我希望两个平台上的会话都一样,我是怎么做到的?这是可能的吗?

1 个答案:

答案 0 :(得分:1)

根据This answser,您首先要将Cookie域设置为“.example.com”以启用跨子域共享。

要以更具体的方式回答,您必须更改config / session.php文件中的“domain”值。注意在当地环境中的影响。

还有一些事情需要考虑。如果这两个域是不同的laravel APP,请确保他们共享相同的APP KEY,以便cookie在两个应用程序上都有效,并且它们共享相同的会话存储(相同的数据库表或相同的文件夹路径,适应任何驱动程序)使用)。

请注意,通过共享APP KEY,攻击一个应用程序将使攻击者可能访问另一个应用程序。 (作为有权访问其中一个的真实用户有意义,可以访问另一个)。为了更安全,请查看oauth提供程序,使用户能够使用单个共享登录系统访问应用程序。