Через 20 минут бездействия сеанс должен быть завершен в приложении.
Как я могу сделать это в symfony2.
Через 20 минут бездействия сеанс должен быть завершен в приложении.
Как я могу сделать это в symfony2.
Установите срок действия session
в файле config.yml
в разделе framework
.
config.yml
framework:
secret: %secret%
charset: UTF-8
error_handler: null
csrf_protection:
enabled: true
router: { resource: "%kernel.root_dir%/config/routing.yml" }
validation: { enabled: true, annotations: true }
templating: { engines: ['twig'] } #assets_version: SomeVersionScheme
session:
default_locale: %locale%
lifetime: 3600
auto_start: true
измените значение session: lifetime
в секундах по умолчанию на 3600.
Собственное хранилище сеансов использует файлы cookie. Другой пример обработки сеансов — их сохранение в базе данных.
Метод Джейсона приведет к тому, что сеанс истечет через один час. Вы также можете принудительно выйти из системы в любое время, например:
$this->container->get('request')->getSession()->invalidate();
$this->container->get('security.context')->setToken();
Примечание. Начиная с Symfony 2.6, служба security.context устарела и разделена на две новые службы: security.authorization_checker и security.token_storage.
Ссылка на конфигурацию фреймворка для сеанса
cookie_lifetime: 3600
05.05.2015
PHP
передаст значение, сохраненное в сеансе директивыphp.ini
gc_maxlifetime
. Любой сохраненный сеанс, который был сохранен болееgc_maxlifetime
назад, должен быть удален. Это позволяет удалять записи в зависимости от времени простоя. 05.05.2015cookie_lifetime
будет установлено относительно высокое значение, а сборщик мусораgc_maxlifetime
будет настроен на уничтожение сеансов в любой желаемый период простоя. 05.05.2015