Php Laravel 5重定向循环错误

Php Laravel 5重定向循环错误,php,redirect,laravel-5,infinite-loop,middleware,Php,Redirect,Laravel 5,Infinite Loop,Middleware,我试图做一个登录和管理脚本,问题是我有一个重定向循环,我不知道为什么 我需要登录用户,并且可以在/路径中,而不是/home 如果更改则返回新的重定向响应(url('/')to返回新的重定向响应(url('/anotherpage')它可以工作,但我想成为/ 路线: Route::get('/', [ 'as' => 'home', 'uses' => 'HomeController@index' ]); // Tutorials Route

我试图做一个登录和管理脚本,问题是我有一个重定向循环,我不知道为什么

我需要登录用户,并且可以在
/
路径中,而不是
/home

如果更改
则返回新的重定向响应(url('/')
to
返回新的重定向响应(url('/anotherpage')它可以工作,但我想成为
/

路线:

    Route::get('/', [
        'as' => 'home', 'uses' => 'HomeController@index'
    ]);


    // Tutorials Routes

    Route::get('/tutorials', 'HomeController@tutorials');
    Route::get('/tutorials/{category?}', 'HomeController@tutorialsCategory');
    Route::get('/tutorials/{category?}/{lesson?}', 'HomeController@tutorialsLesson');

    // Courses and Series Routes

    Route::get('/courses-and-series', 'HomeController@coursesandseries');

    // Admin Routes

    Route::group(['middleware' => 'App\Http\Middleware\AdminMiddleware'],                 function()
    {
        Route::get('/admin', function()
        {
            return 'Is admin';
        });
    });

    Route::controllers([
        'auth' => 'Auth\AuthController',
        'password' => 'Auth\PasswordController',
    ]);
    public function handle($request, Closure $next)
    {
        if (Auth::user()->type != 'Admin')
        {
            return abort(404);
        }

        return $next($request);
    }
    public function handle($request, Closure $next)
    {
        if ($this->auth->check())
        {
            return new RedirectResponse(url('/'));
        }

        return $next($request);
    }
class HomeController extends Controller {
    public function __construct()
    {
        $this->middleware('guest');
    }

    public function index()
    {
        return view('home');
    }

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

    public function tutorialsCategory()
    {
        return view('pages.tutorials');
    }

    public function tutorialsLesson()
    {
        return view('pages.single');
    }

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

    public function single()
    {
        return view('pages.single');
    }
}
管理中间件:

    Route::get('/', [
        'as' => 'home', 'uses' => 'HomeController@index'
    ]);


    // Tutorials Routes

    Route::get('/tutorials', 'HomeController@tutorials');
    Route::get('/tutorials/{category?}', 'HomeController@tutorialsCategory');
    Route::get('/tutorials/{category?}/{lesson?}', 'HomeController@tutorialsLesson');

    // Courses and Series Routes

    Route::get('/courses-and-series', 'HomeController@coursesandseries');

    // Admin Routes

    Route::group(['middleware' => 'App\Http\Middleware\AdminMiddleware'],                 function()
    {
        Route::get('/admin', function()
        {
            return 'Is admin';
        });
    });

    Route::controllers([
        'auth' => 'Auth\AuthController',
        'password' => 'Auth\PasswordController',
    ]);
    public function handle($request, Closure $next)
    {
        if (Auth::user()->type != 'Admin')
        {
            return abort(404);
        }

        return $next($request);
    }
    public function handle($request, Closure $next)
    {
        if ($this->auth->check())
        {
            return new RedirectResponse(url('/'));
        }

        return $next($request);
    }
class HomeController extends Controller {
    public function __construct()
    {
        $this->middleware('guest');
    }

    public function index()
    {
        return view('home');
    }

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

    public function tutorialsCategory()
    {
        return view('pages.tutorials');
    }

    public function tutorialsLesson()
    {
        return view('pages.single');
    }

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

    public function single()
    {
        return view('pages.single');
    }
}
重定向验证:

    Route::get('/', [
        'as' => 'home', 'uses' => 'HomeController@index'
    ]);


    // Tutorials Routes

    Route::get('/tutorials', 'HomeController@tutorials');
    Route::get('/tutorials/{category?}', 'HomeController@tutorialsCategory');
    Route::get('/tutorials/{category?}/{lesson?}', 'HomeController@tutorialsLesson');

    // Courses and Series Routes

    Route::get('/courses-and-series', 'HomeController@coursesandseries');

    // Admin Routes

    Route::group(['middleware' => 'App\Http\Middleware\AdminMiddleware'],                 function()
    {
        Route::get('/admin', function()
        {
            return 'Is admin';
        });
    });

    Route::controllers([
        'auth' => 'Auth\AuthController',
        'password' => 'Auth\PasswordController',
    ]);
    public function handle($request, Closure $next)
    {
        if (Auth::user()->type != 'Admin')
        {
            return abort(404);
        }

        return $next($request);
    }
    public function handle($request, Closure $next)
    {
        if ($this->auth->check())
        {
            return new RedirectResponse(url('/'));
        }

        return $next($request);
    }
class HomeController extends Controller {
    public function __construct()
    {
        $this->middleware('guest');
    }

    public function index()
    {
        return view('home');
    }

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

    public function tutorialsCategory()
    {
        return view('pages.tutorials');
    }

    public function tutorialsLesson()
    {
        return view('pages.single');
    }

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

    public function single()
    {
        return view('pages.single');
    }
}
主控台:

    Route::get('/', [
        'as' => 'home', 'uses' => 'HomeController@index'
    ]);


    // Tutorials Routes

    Route::get('/tutorials', 'HomeController@tutorials');
    Route::get('/tutorials/{category?}', 'HomeController@tutorialsCategory');
    Route::get('/tutorials/{category?}/{lesson?}', 'HomeController@tutorialsLesson');

    // Courses and Series Routes

    Route::get('/courses-and-series', 'HomeController@coursesandseries');

    // Admin Routes

    Route::group(['middleware' => 'App\Http\Middleware\AdminMiddleware'],                 function()
    {
        Route::get('/admin', function()
        {
            return 'Is admin';
        });
    });

    Route::controllers([
        'auth' => 'Auth\AuthController',
        'password' => 'Auth\PasswordController',
    ]);
    public function handle($request, Closure $next)
    {
        if (Auth::user()->type != 'Admin')
        {
            return abort(404);
        }

        return $next($request);
    }
    public function handle($request, Closure $next)
    {
        if ($this->auth->check())
        {
            return new RedirectResponse(url('/'));
        }

        return $next($request);
    }
class HomeController extends Controller {
    public function __construct()
    {
        $this->middleware('guest');
    }

    public function index()
    {
        return view('home');
    }

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

    public function tutorialsCategory()
    {
        return view('pages.tutorials');
    }

    public function tutorialsLesson()
    {
        return view('pages.single');
    }

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

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

您之所以有这些重定向循环,是因为HomeController中的所有方法都受到来宾中间件的保护

因为您希望将经过身份验证的用户重定向到HomeController@index

删除
$this->中间件('guest')来自HomeController

修改来宾中间件以忽略索引方法

$this->middleware('guest',['only'=>['tutorials','tutorialscape']])


列出您希望使用来宾中间件(不包括索引方法)保护的其他方法

尝试返回此
返回新的重定向响应(route(“home”)它不工作错误太多重定向这些是你仅有的路由吗?在控制器构造中是否有中间件?您是否将中间件连接到HomeController?我可以看一下HomeController的代码吗。问题可能来自itI在文章中添加homecontroller,我只创建AdminController。感谢移动$this->middleware('guest');