Laravel子域:所有子域之间的单一身份验证不起作用?

问题描述 投票:1回答:1

我正在使用动态子域系统(例如(name.domain.com)。我正在使用带有laravel的serve命令的Ubuntu。

将所有内容设置为我的路线:

Route::domain('{x}.localhost')->group(function (){
    Route::get('/url/',  'SomeController@someAction')->middleware('can:xyz,x')->name('someName');
});

现在,一切正常,除了Auth已被子域锁定的事实

例如(xyz.localhost:8000 /,localhost:8000 /,127.0.0.1:8000)都需要单独的登录名。

经过一番谷歌搜索之后,我可以在config / session.php文件中的“域”下将其覆盖。因此,在我的.env文件中,我为SESSION_DOMAIN设置了一个新的变量,并将其指向“ .localhost”或“ .localhost:800”或与127.0.0.1 /:8000相同的名称,但是当我尝试登录我的会话时登录后立即无效,例如(我登录并重定向到正确的路由,但是我的身份验证发现我没有登录)

会话配置

'domain' => env('SESSION_DOMAIN', null),

我的.env

SESSION_DOMAIN=.localhost

似乎出于某种原因未设置cookie?

应该注意,这是同时使用文件和数据库进行会话的,我也每次都清除了缓存和会话存储以及cookie等。

-在过去的几天里,我尽力想出的一切办法来解决这一问题,但没有运气。即使是全新安装的laravel,也存在相同的问题。

有什么建议吗?亲切的问候,马特

php laravel authentication session subdomain
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.