我试图解决这个问题大约需要 13 个小时,但没有运气。我已经用Entrust设置了 Laravel 5.3 。它工作正常。我在控制器中设置了一个条件来检查用户是否有权访问他/她试图访问的页面。如果不是,那么只需重定向到主页。它也运行良好,但经过一些刷新和浏览后,它出现了一个奇怪的故障——一切都将进入主页(例如http://mysite.dev/)。只有身份验证页面是可以的(登录/注册等)。
所以为了确认,我已经从那个控制器中删除了授权检查,但没有运气。然后删除了中间件“auth”,但仍然是相同的重定向。太奇怪了:(下面给出了一些代码-
路线/web.php
Auth::routes();
Route::group(['middleware' => ['auth']], function() {
Route::get('/user/view-profile', 'HomeController@profile')->name('profile');
Route::get('/logout', 'HomeController@logout');
Route::get('/accounts-groups/list-accounts-groups', 'HomeController@listAccountsGroups');
Route::get('/', 'HomeController@index')->name('landing');
});
应用程序/Http/Controllers/Controller.php
use AuthorizesRequests,
DispatchesJobs,
ValidatesRequests;
应用程序/Http/Controllers/HomeController.php
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
return view('home');
}
public function profile()
{
return "Profile Page";
}
public function listAccountsGroups()
{
return "Group Listing";
}
public function logout()
{
Auth::logout();
return redirect()->route('landing');
}
我对 Laravel 很陌生,这是我的第一个项目,所以学习和做,但在这里我只是卡住了......