ayarlayabileceğiniz: bunlar erişmeye çalışırsanız
protected $loginPath = 'admin/login';
$loginPath
kullanıcı sekti nerede değişmeyecek unutmayın korunan rota. Bu App \ Http \ Middleware \ Authenticate middleware'in tanıtıcı yöntemi tarafından kontrol edilir.
public function handle($request, Closure $next, $guard = null)
{
if (Auth::guard($guard)->guest()) {
if ($request->ajax()) {
return response('Unauthorized.', 401);
} else {
return redirect()->guest('admin/login');
}
}
return $next($request);
}
Özel bir AuthController kullanıyorsanız, özel bir katman oluşturmak daha iyi olabilir.
php artisan make:middleware AdminAuthController
Bu
Ara Katman klasörünün \ app \ Http altında AdminAuthController.php yaratacaktır. biz Kernel.php
\ app \ Http olan yeni ara katman kaydetmeniz gerekir yaptıktan sonra
use Illuminate\Support\Facades\Auth;
:
Sonra yukarıdaki gibi sap fonksiyonunu düzenlemek değil, aynı zamanda emin yapacağız yapmanız gereken bu Sonuçta
protected $routeMiddleware = [
'auth' => \App\Http\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'auth.admin' => \App\Http\Middleware\AdminAuthController::class
];
istediğiniz herhangi rotalar için yerine auth
ait auth.admin
ortakatmanını kullanmaktır.
Kişisel yolları aşağıdaki gibi görünecektir:
Route::group(['namespace' => 'Admin', 'prefix' => 'admin', 'middleware' => 'web'], function() {
Route::group(['middleware' => 'auth.admin'], function(){
/* Admin Auth */
Route::get('login', 'Auth\[email protected]');
Route::post('login', 'Auth\[email protected]');
Route::get('register', 'Auth\[email protected]');
Route::post('register', 'Auth\[email protected]');
Route::get('logout', 'Auth\[email protected]');
}
Route::group(['middleware' => 'auth'], function(){
/*Admin Dashboard Routes */
Route::get('dashboard', '[email protected]');
});
});
benim yetkilendirme denetleyicisi kolu geçersiz kılabilir miyim? –
@JessMcKenzie Hayır yapamazsınız. Giriş kısmı, middleware redirect() -> guest ('admin/login') içinde ele alınır; –
Hmm, özel bir auth denetleyicisi var ve 2x ayrı oturum açma sahip olduğum için başka ne yapabilirim - bir tane/giriş –