0

fortrabbit に laravel アプリをデプロイしました。デプロイされたアプリは、認証とミドルウェア ('auth' と 'guest') をテストするためだけの単純なアプリです。localhost でアプリを試してみましたが、認証とミドルウェアは正常に機能しました。fortrabbit でアプリを試したところ、認証は正常に機能しましたが、ミドルウェアに問題がありました。私は得る

この Web ページにはリダイレクト ループがあります。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「auth」ミドルウェアの場合:

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 のファイル/設定はありますか?

4

2 に答える 2

0

config/cache.phpFortrabbit memcache 構成 (リンク) で変更した後、ファイル内の値だけでなくtoCACHE_DRIVERも変更する必要があります。SESSION_DRIVERmemcached.env

于 2016-03-30T09:24:58.077 に答える
0

あなたの認証ミドルウェアは私には見えません。
guest() がこれを行う場合、ゲストでない場合はログインにリダイレクトします。ゲストが許可されていないページのゲストである場合、ログインにリダイレクトされるべきではありませんか?
ログインするとゲストではなくなり、「ホーム」にリダイレクトされ、オフになっている「認証」がトリガーされ、ログインにリダイレクトされ、「ゲスト」がトリガーされてリダイレクトされるため、無限ループに陥っています。 ...

認証ミドルウェアは次のようになるはずです。Github のLaravelからのソース

public function handle($request, Closure $next)
{
    if ($this->auth->guest()) {
        if ($request->ajax()) {
            return response('Unauthorized.', 401);
        } else {
            return redirect()->guest('auth/login');
        }
    }
    return $next($request);
}
于 2016-03-21T14:56:28.717 に答える