【发布时间】:2016-03-21 14:40:29
【问题描述】:
我已经为 fortrabbit 部署了一个 laravel 应用程序。部署的应用程序是一个简单的应用程序,仅用于测试身份验证和中间件(“auth”和“guest”)。我已经在 localhost 中尝试过该应用程序,身份验证和中间件工作正常。当我在 fortrabbit 中尝试我的应用程序时,身份验证工作正常,但中间件存在问题。我明白了
此网页有一个重定向循环,ERR_TOO_MANY_REDIRECTS
每次我登录主页。
routes.php:
Route::get('/','UserController@getIndex');
Route::group(['middleware' => 'guest'], function() {
Route::get('login','UserController@getLogin');
Route::post('login','UserController@postLogin');
Route::get('register','UserController@getRegister');
Route::post('register','UserController@postRegister');
});
Route::group(['middleware' => 'auth'], function() {
Route::get('home','MainController@getHome');
Route::get('logout','MainController@logout');
});
Authenticate.php 用于“身份验证”中间件:
public function handle($request, Closure $next)
{
if ($this->auth->guest()) {
if ($request->ajax()) {
return response('Unauthorized.', 401);
} else{
return redirect()->guest('/login');
}
return $next($request);
}
RedirectIfAuthenticated.php 用于“访客”中间件:
public function handle($request, Closure $next)
{
if ($this->auth->check()) {
return redirect('home');
}
return $next($request);
}
我必须配置 fortrabbit 中的任何文件/设置才能正确运行此应用程序吗?
【问题讨论】:
-
您的身份验证中间件看向我。如果来宾()这样做,如果不是来宾重定向到登录。如果您是不允许访客进入的页面上的访客,您不应该被重定向到登录吗?您处于无限循环中,因为一旦您登录,您就不再是访客,因此您会被重定向到“家”,这会触发关闭的“身份验证”并将您重定向到登录,这会触发“访客”重定向您...
-
您好,我认为这是一个会话错误github.com/laravel/framework/issues/8172 您可以再次尝试全新安装吗?兔子堡中设置的会话驱动程序是什么?
标签: php laravel laravel-5 fortrabbit