安装新的Laravel 5.4项目。
运行php artisan make:auth
。
转到http://localhost:8000/home(未登录)。
我被重定向到http://localhost:8000/login
这种重定向看起来很神奇。这是回家的路线:
|| GET|HEAD |home||App\Http\Controllers\HomeController@index|web,auth|
我们永远不会使用index()
方法,因为auth
中间件需要
过度。我打开auth
中间件文件Illuminate\Auth\Middleware\Authenticate.php
,但没有提到/login
重定向。
从/home
到/login
的重定向定义在哪里?
答案 0 :(得分:0)
检查app/Exceptions/Handler.php
文件,您会看到Exception handler
未经身份验证的用户:
protected function unauthenticated($request, AuthenticationException $exception)
{
if ($request->expectsJson()) {
return response()->json(['error' => 'Unauthenticated.'], 401);
}
return redirect()->guest(route('login'));
}
P.S。您可以在home
文件中重定向到app/Http/Middleware/RedirectIfAuthenticated.php
。
UPD1:登录/注册后重定向到主页,您可以在app/Http/Controllers/Auth/LoginController.php
和app/Http/Controllers/Auth/RegisterController.php
进行设置。
它看起来像
protected $redirectTo = '/home';