Я работаю на простом блог-сайте, используя laravel, который состоит из 2-х частей, блог-сайт для пользователей и панель администратора
Все работает хорошо до, но после раскомментирования ниже строки в Http / Kernal.php
\Illuminate\Session\Middleware\AuthenticateSession::class,
не удалось войти в систему и перенаправить на панель администратора, и она перенаправлена на страницу 404.
Я просто хочу использовать промежуточное ПО AuthenticateSession
, потому что хочу использовать функцию logoutOtherDevices для пользователей сайта
Auth::logoutOtherDevices($request->input('new-password'));
, когда я закомментирую эту строку \Illuminate\Session\Middleware\AuthenticateSession::class
, опять-таки она работает нормально.
, пожалуйста, помогите мне решить эту проблему.
У меня есть users
таблица, используемая для входа пользователей в систему, и admin
таблица для входа администратора на панель управления
вот таблица дляadmin:
здесь config/auth.php
:
<?php
return [
'defaults' => [
'guard' => 'web',
'passwords' => 'users',
],
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'admin' => [
'driver' => 'session',
'provider' => 'admins',
],
],
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Model\User::class,
],
'admins' => [
'driver' => 'eloquent',
'model' => App\Model\Admin::class,
]
],
'passwords' => [
'users' => [
'provider' => 'users',
'table' => 'password_resets',
'expire' => 60,
],
'admins' => [
'provider' => 'admins',
'table' => 'password_resets',
'expire' => 60,
]
],
];
вот функция входа администратора:
public function login(Request $request)
{
// Validate the form data
$this->validate($request, [
'email' => 'required|email',
'password' => 'required|min:6'
]);
if (Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->password,'status'=>1], $request->remember)) {
// if successful, then redirect to their intended location
return redirect()->intended(route('admin.dashboard'));
}else{
// if unsuccessful, then redirect back to the login with the form data
return redirect()->back()->withInput($request->only('email', 'remember'));
}
}