kernel.php
protected $routeMiddleware = [
'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
'can' => \Illuminate\Auth\Middleware\Authorize::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'adminauth' => \App\Http\Middleware\AdminAuth::class,
];
web.php
Route::group(['middleware' => 'adminauth'], function() {
//route for admin dashboard
Route::get('/admin', [
'uses' => 'AdminController@dashboard',
'as' => 'dashboard'
]);
//route for admin setting
Route::get('/admin/setting', [
'uses' => 'AdminController@setting'
]);
});
AdminAuth.php
public function handle($request, Closure $next)
{
return redirect('/admin/setting');
//return $next($request);
}
AdminController.php
public function setting() {
$admin = $this->admin;
$notification = $this->notification;
return view('admin/setting')->with(compact(
'admin',
'notification'
));
}
私はこの問題に直面しています。つまり、ページが正しくリダイレクトされていません。Firefoxは、サーバーがこのアドレスの要求を決して完了しない方法でリダイレクトしていることを検出しました。この問題は、Cookieの受け入れを無効にするか拒否することによって発生する場合があります。
問題は、admin/setting
ルートがadminauth
ミドルウェアを使用していることですが、adminauth
ミドルウェアがadmin/setting
通過しない場合、ミドルウェアはリダイレクトされます。
ただの有益なメモ:
リダイレクト応答は、コードが300〜399の応答であり、これらの応答はブラウザに送信され、ブラウザに次に何をするかを指示します。ブラウザはデフォルトでリダイレクトに従い、その場所への新しいリクエストを作成します。
あなたの場合、ブラウザはadmin/setting
ミドルウェアへのリクエストを作成して失敗し、ブラウザにリダイレクトするように指示admin/setting
します。リダイレクト先はまったく同じことを繰り返します。Firefoxのようなブラウザには、これを検出するメカニズムが組み込まれており、サーバーにリクエストが殺到する代わりに、このループを停止して、問題があることをユーザーに通知します。
これを解決するには、別の場所にリダイレクトするか/admin/setting
、adminauth
ミドルウェアからを除外する必要があります。
解決策はアプリケーションによって異なります。
Firefoxがリダイレクトを停止することを正しく選択する理由についてもう少し詳しく説明します。
HTTP / 1.1プロトコルのセクション9.1.2によると、GET要求はべき等です。
N> 0の同一のリクエストの副作用は、単一のリクエストの場合と同じです。
これは、ブラウザがXへのリクエストによって同じXへのリダイレクトが発生するため、これは無限のリダイレクトであり、停止する必要があると主張するために使用する仮定です。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加