Мое приложение отлично работает с файловыми сессиями. Однако после переключения на драйвер базы данных мои сеансы перестали работать. Это именно то, что происходит:
Пользователь открывает страницу входа (сеанс создается в таблице sessions
с user_id = NULL
)
Пользователь заполняет свои учетные данные и отправляет форму (сеанс в базе данных получает user_id = 1
)
Система пытается перенаправить пользователя на страницу после входа в систему, однако к этому времени сеанс был прерван (сеанс имеет user_id = NULL
)
Чтобы переключиться на драйвер базы данных, я сделал только следующее (приложение уже работало с файловыми сессиями):
Создал таблицу сессий, используя:
php artisan session:table
composer dump-autoload
php artisan migrate
Настроен config/sessions.php
следующим образом:
'driver' => env('SESSION_DRIVER', 'database')
'connection' => 'mysql'
'table' => 'sessions'
'domain' => 'test.local'
Мой файл .env:
DB_CONNECTION=mysql
SESSION_DRIVER=database
routes.php
Route::group(['domain' => 'test.local', 'middleware' => 'web'], function() {
Route::group(['domain' => 'test.local', 'middleware' => 'auth'], function() {
// post-login routes...
}
// show the login form
Route::get('/login', 'Auth\LoginController@showLogin');
// submit the login form
Route::post('/login', 'Auth\LoginController@submitLogin');
}
Я что-то упустил? Любая помощь очень ценится.