会话与一台服务器上的多个 Laravel 项目冲突

Session conflicts with multiple Laravel projects on one server

我有几个 Laravel 项目的共享服务器。示例:

x.x.x.x/project1
x.x.x.x/project2

我的问题是,当我尝试在 project1 中登录时,project2 会自动注销。是因为 Laravel 个会话吗?

有人可以建议我应该做什么吗?

会话 cookie 的路径是可配置的。看看 pathconfig/session.php

这不是会话问题,而是 cookie 问题。 您可以针对每个项目在 .env 文件中以不同方式修复 APP_NAME

这是因为 session.php 文件的 cookie 配置部分。

'cookie' => env(
    'SESSION_COOKIE',
    Str::slug(env('APP_NAME', 'laravel'), '_').'_session'
),

我更改了会话 cookie 标识符以添加环境,因此我可以在同一浏览器中同时打开开发站点和实时站点。这是我在 config/session.php 中为 cookie 替换的代码:

'cookie' => env(
    'SESSION_COOKIE',
    str_slug(env('APP_NAME', 'laravel'), '_').env('APP_ENV','dev').'_session'
),