Проблема
По сути, у меня есть веб-приложение Yii2, которое требует от всех пользователей входа в систему.Пользователи могут успешно войти в систему, но "случайно" выходят из системы.Это происходит 2-3 раза в день примерно для 50% моих пользователей.
Пользователи будут активны в системе, а затем загружают файл или сохраняют форму, и вместо успешного завершения действия пользователи приводятсяк экрану входа в систему, означающему, что их сеанс истек, и им необходимо снова войти в систему.
Примечания
- В моей исходной конфигурации для сеансов использовался FileCache.В надежде решить проблему, я реализовал кэш Redis, но проблема сохраняется.
- Существует код JavaScript, который настроен для автоматического выхода пользователей из системы после истечения срока их сеанса, но сначала выдается предупреждение, и этов этих случаях код не выполняется.
Конфигурация
Yii2 Config (оригинал)
'session' => ['class' => 'yii\web\CacheSession'],
'cache' => ['class' => 'yii\caching\FileCache'],
'user' => [
'class' => 'app\models\YiiUser',
'identityClass' => 'app\models\User',
'enableAutoLogin' => false,
'enableSession' => true,
'authTimeout' => 1200, // 20 min (in seconds)
],
Yii2 Config (обновлен) кэш")
'cache' => [
'class' => 'yii\redis\Cache',
'redis' => [
'hostname' => 'localhost',
'port' => 6379,
'database' => 0,
]
],
PHP Config
session.save_handler = files
session.use_cookies = 1
session.use_only_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.cookie_httponly =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 1000
session.gc_maxlifetime = 1440
Я действительно изо всех сил, поэтому любые рекомендации, вопросы или предложения будут с благодарностью.Даже несколько советов о том, куда добавить журналирование, будут полезны.