会话与一台服务器上的多个 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 的路径是可配置的。看看 path
键 config/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'
),
我有几个 Laravel
项目的共享服务器。示例:
x.x.x.x/project1
x.x.x.x/project2
我的问题是,当我尝试在 project1
中登录时,project2
会自动注销。是因为 Laravel
个会话吗?
有人可以建议我应该做什么吗?
会话 cookie 的路径是可配置的。看看 path
键 config/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'
),