【发布时间】:2020-05-20 06:09:54
【问题描述】:
我有两个项目在同一个共享主机(Namecheap 经销商主机)中运行,具有 SSH 访问权限。 Laravel 版本是 5.4。在这两个项目中,对session 和cache 使用database 驱动程序。我已经更改了这两个项目的 cookie 名称。但我面临两个严重的问题。
- 几分钟后它会自动注销经过身份验证的用户。
- 其中有一个博客部分。如果经过身份验证的用户发布了某些内容,则表明另一个经过身份验证的用户发布了该内容。
session.php (thefinancialexpress.com.bd)
<?php
return [
'driver' => env('SESSION_DRIVER', 'file'),
'lifetime' => 120,
'expire_on_close' => false,
'encrypt' => false,
'files' => storage_path('framework/sessions'),
'connection' => null,
'table' => 'sessions',
'store' => null,
'lottery' => [2, 100],
'cookie' => 'fe_online',
'path' => '/',
'domain' => env('SESSION_DOMAIN', null),
'secure' => env('SESSION_SECURE_COOKIE', false),
'http_only' => true,
];
.env (thefinancialexpress.com.bd)
BROADCAST_DRIVER=log
CACHE_DRIVER=database
SESSION_SECURE_COOKIE=true
SESSION_DRIVER=database
QUEUE_DRIVER=sync
session.php (today.thefinancialexpress.com.bd)
<?php
return [
'driver' => env('SESSION_DRIVER', 'file'),
'lifetime' => 120,
'expire_on_close' => false,
'encrypt' => false,
'files' => storage_path('framework/sessions'),
'connection' => null,
'table' => 'sessions',
'store' => null,
'lottery' => [2, 100],
'cookie' => 'laravel_session',
'path' => '/',
'domain' => env('SESSION_DOMAIN', null),
'secure' => env('SESSION_SECURE_COOKIE', false),
'http_only' => true,
];
.env (today.thefinancialexpress.com.bd)
CACHE_DRIVER=database
SESSION_DRIVER=database
QUEUE_DRIVER=sync
请帮我解决这个问题。
感谢和问候
【问题讨论】:
-
两个项目是同一个域名吗?
-
@xyz 不,一个是主域,另一个是子域。
-
你能分享你的会话配置吗?
-
@EliyasHossain 请检查浏览器中的会话 cookie 以验证它们是否在各自的域中。如果主域看起来像这样“.maindomain.com”,它也适用于您不想要的子域。可能两者都有这个价值。
-
在这种情况下,您可以使用配置变量 session.php -> 域来更改它
标签: laravel laravel-authentication laravel-session