Увеличение продолжительности сеанса базы данных с помощью Symfony

#symfony #session

Вопрос:

Мой сеанс для Symfony помещается в базу данных по назначению, однако проблема в том, что время работы сеанса составляет всего 24 минуты. Я пытаюсь увеличить это, но, похоже, это не работает.

Мои рамки.файл yaml:

 session:
    enabled: true
    handler_id: SymfonyComponentHttpFoundationSessionStorageHandlerPdoSessionHandler
    cookie_secure: 'auto'
    cookie_samesite: 'lax'
    cookie_lifetime: 604800
 

Мои услуги.файл yaml:

 services:
    SymfonyComponentHttpFoundationSessionStorageHandlerPdoSessionHandler:
        arguments:
            - '%env(DATABASE_URL)%'
 

Моя безопасность.файл yaml:

 firewalls:
        dev:
            pattern: ^/(_(profiler|wdt)|css|images|js)/
            security: false
        main:
            login_throttling:
                limiter: app.custom.limiter
            lazy: true
            provider: app_user_provider
            # https://symfony.com/doc/current/security/impersonating_user.html
            switch_user: true
            guard:
                authenticators:
                    - AppSecurityLoginFormAuthenticator
            logout:
                path: logout
                # where to redirect after logout
                # target: app_any_route
            remember_me:
                secret:   ‘%kernel.secret%’
                lifetime: 604800 # 1 week in seconds
 

Что я здесь делаю не так?

Комментарии:

1. Откуда ты знаешь, что это всего лишь 24 минуты?

2. Потому что я смотрю на запись в базе данных, и она показывает session_lifetime, который проходит через 24 минуты после начала сеанса.

Ответ №1:

Значение по умолчанию gc_maxlifetime в PHP 1440 — это то, что объясняет 24 минуты.

Так что обновите свою session.gc_maxlifetime ценность.