Laravel - 将管理员用户路由到子域

Laravel - Route admin user to subdomain

我正在使用 Laravel 构建一个网站,其中可以将用户指定为管理员。管理员只能浏览子域 admin.domain.com 下的仪表板,其他用户只能浏览主域 domain.com

我的问题是如何限制管理员查看普通用户可以查看的部分,反之亦然。我希望管理员仅通过所有子域路由导航(例如 admin.domain.com/statistics)而不是 domain.com/categories 。这些是我的管理员路线和 public 部分。

Route::group(['domain' => 'admin.domain.com'], function () {
    /* Admin routes */
});

Route::group(['domain' => 'domain.com'], function () {
    /* Public routes */
}

我希望当我以管理员身份登录时自动重定向到子域,如果我输入 public 路由,我希望被重定向回根管理员路由。

我考虑的解决方案之一是用一个中间件包装管理员和 public 路由,该中间件将根据其类型(管理员或普通用户)重定向用户,但我不确定这是否是正确的解决方案。

谢谢

您可以使用 2 个中间件

1- 将非管理员重定向到 public 区域将被放置在第一组

2- 将管理员重定向到管理员子域将被放置在第二组中