我们的网站是在 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 权限包来检查角色。现在这里的问题是身份验证。如果用户登录到suppliers.mainwebsite.com,当他们去mainwebsite.com 时,他们应该再次登录。我们希望他们登录所有子域。因为有些页面是相似的,但根据用户的角色显示不同的内容。例如,仪表板在 mainwebsite.com/dashboard 中,但是如果您已登录到 supply.mainwebsite 并且有一个链接可以转到仪表板,该链接将转到 mainwebsite.com.dashboard,因为子域不同,他们应该再次登录。我们希望他们保持登录状态。
我感谢您的帮助。
问候,
最佳答案
尝试这个
在 config/session.php
'domain' => env('SESSION_DOMAIN', null),
到'domain' => env('SESSION_DOMAIN', '.mainwebsite.com'),
或在 .env 中
SESSION_DOMAIN='.mainwebsite.com',
关于php - Laravel 登录一次,可登录多个子域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63735508/