gpt4 book ai didi

php - 使用路由的 Laravel 5.1 页面身份验证

转载 作者:可可西里 更新时间:2023-10-31 23:29:15 25 4
gpt4 key购买 nike

我正在开发一个需要管理面板的网站。我目前正在尝试设置该面板的身份验证,但我找不到拒绝任何 guest 用户(非管理员)访问的方法。当然,我有一个登录页面,登录后,它会路由到管理页面,不过你也可以在未登录时转到/admin。

routes.php :

Route::get('home', function(){
if (Auth::guest()) {
return Redirect::to('/');
} else {
return Redirect::to('admin');
}
});

Route::get('admin', function () {
return view('pages.admin.start');
});

主 Controller .php :

namespace App\Http\Controllers;

use App\Http\Controllers\Controller;

class MainController extends Controller {

public function getIndex() {
return view('pages.index');
}

public function getAbout() {
return view('pages.about');
}

public function getPortfolio() {
return view('pages.portfolio');
}

public function getShop() {
return view('pages.shop');
}

public function getContact() {
return view('pages.contact');
}

/*public function getAdmin() {
return view('pages.admin.start');
}*/
}

我真的需要一些帮助,因为我完全被困住了,是的,我已经阅读了文档,但也许我只是遗漏了一些东西。

最佳答案

假设你有这样一行:

'auth' => 'App\Http\Middleware\Authenticate',

在你的 app/Http/Kernel.php 文件中:

将所有你需要“认证”的路由放在分组中,但将“访客”路由放在它们之外:

Route::get('home', function(){
if (Auth::guest()) {
return Redirect::to('/');
} else {
return Redirect::to('admin');
}
});



Route::group( ['middleware' => 'auth' ], function(){
Route::get('admin', function () {
return view('pages.admin.start');
});
Route::just-another-route()...;
Route::just-another-route()...;

});

文档:http://laravel.com/docs/5.1/routing#route-groups

关于php - 使用路由的 Laravel 5.1 页面身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34267247/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com