猿问

Laravel 登录一次即可登录多个子域

我们的网站是在 apache 服务器上使用 laravel 7 创建的。 我们有一个具有 3 个不同子域的应用程序。例如:


mainwebsite.com


products.mainwebsite.com


customers.mainwebsites.com


suppliers.mainwebsite.com

子域已这样设置:


Route::domain('supplier.mainwebsite.com')->group(function () {

      Route::get('/dashboard', 'ExampleController@show')->name('example-show')->middleware('auth','isActive','role:supplier|admin|producer');

});

我们使用 spatie 权限包来检查角色。


现在的问题是身份验证。如果用户登录到 sellers.mainwebsite.com,当他们访问 mainwebsite.com 时,他们应该再次登录。我们希望他们在所有子域中登录。因为有些页面相似,但根据用户的角色显示不同的内容。例如,仪表板位于 mainwebsite.com/dashboard 中,但如果您已登录到 sellers.mainwebsite,并且有一个转到仪表板的链接,该链接会转到 mainwebsite.com.dashboard,因为子域不同,他们应该再次登录。我们希望他们保持登录状态。


慕斯709654
浏览 101回答 1
1回答

开满天机

尝试这个在config/session.php'domain' => env('SESSION_DOMAIN', null),到'domain' => env('SESSION_DOMAIN', '.mainwebsite.com'),或者在 .env 中SESSION_DOMAIN='.mainwebsite.com',
随时随地看视频慕课网APP
我要回答