duanli9569
duanli9569
采纳率100%
2018-04-11 21:21

Laravel - 将admin用户路由到子域

已采纳

I am building a website with Laravel where a user can be assigned as an admin. The admins should only navigate through the dashboard which will be under a subdomain admin.domain.com and the other users can only navigate through the main domain domain.com.

My question is how can i restrict the admin to view the section where normal users can and vice versa. I want admins to navigate only through all subdomain routes only (for example admin.domain.com/statistics) and not domain.com/categories. These are my routes for the admin and public part.

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

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

I want when i login as an admin to be automatically redirected to the subdomain and if i type a public route i want to be redirected back to the root admin route.

One of the solutions i was thinking was to wrap the admin and public routes with a middleware that will redirect the user depending on its type whether its admin or normal user but im not sure if this is a proper solution.

Thanks

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • doudi4014 doudi4014 3年前

    You Could Use 2 Middlewares

    1- redirect non-admins to public area will be placed in the first group

    2- redirect admins to admins subdomain will be placed in the second group

    点赞 评论 复制链接分享