请帮我解决此Auth重定向问题。
目前我正在使用laravel 5.3.22。我已经把
了protected $redirectTo = 'dashboard';
进入我的loginController。
然后我在浏览器中测试重定向:
http://myapp.localhost/login
它显示"登录页面"正确。然后我继续登录,它将我重定向到" Dashboard"正确。
问题在这里。我成功登录后,如果我试图去
http://myapp.localhost/login
它将我重定向到" Home"哪个不可用。它应该转到" Dashboard"。
请帮帮我。
答案 0 :(得分:3)
请查看folder /app/http/Middleware/
,您应该看到以下文件RedirectIfAuthenticated.php
从以下位置更改:
public function handle($request, Closure $next, $guard = null)
{
if (Auth::guard($guard)->check()) {
return redirect('/home');
}
return $next($request);
致:
public function handle($request, Closure $next, $guard = null)
{
if (Auth::guard($guard)->check()) {
return redirect('/dashboard');
}
return $next($request);
你应该没事。
注意,
/app/Controllers/Auth/LoginController.php
指示您在登录后发送的位置,而
/app/Middleware/RedirectIfAuthenticated.php
在成功登录后,如果请求domain.app/login
请求,则控制用户的发送位置。
答案 1 :(得分:0)
你需要添加到routes.php的路线 一开始创建 1-控制器与Artisan php make :: HomeController 2-在app dir中添加路由Route :: get('/ home',function(){return view('home');}); 3-以后你需要在你的目录资源/ views / home.blade.php中创建一个名为home.blade.php的页面
答案 2 :(得分:0)
那太奇怪了...... 你有没有清除缓存?
$ php artisan cache:clear
$ php artisan config:clear
$ php artisan clear-compiled
如果您没有成功执行上述步骤,请转到以下方法: LoginController 使用AuthenticatesUsers
特征,该特征使用拥有RedirectsUsers
方法的redirectPath()
特征。在这种情况下,您可以像这样覆盖它:
public function redirectPath()
{
return '/Dashboard';
}
正如您可能想到的那样,您必须将代码段放在LoginController中。