Como evitar o tempo limite da sessão no Symfony 1.0?
Pergunta
Usei o framework PHP MVC Symfony para construir um aplicativo web sob demanda.
Tem um bug irritante - a sessão expira após cerca de 15 a 30 minutos de inatividade.Existe uma diretiva de configuração para evitar a expiração da sessão, mas ela não funciona.Mesmo soluções alternativas como Este não me ajudou.
Pretendo não migrar para o Symfony 1.1 (que corrige esse bug) em um futuro próximo.
Alguém já esteve lá e resolveu?Eu ficaria muito grato por uma ou duas dicas!
Solução
Eu investiguei isso e meu colega de trabalho concorda que uma chamada de página de pulsação deve funcionar, você só precisa ter certeza de que a ação invocada redefine o cronômetro da sessão (coisas como a conclusão do campo ajax não fazem isso por conta própria).
Outras dicas
A empresa para a qual trabalho usa Symfony e a solução alternativa que usamos é acionar um aviso com javascript antes que o usuário seja desconectado.Eu suspeito que exista uma maneira de fazer chamadas ajax de 'pulsação' para o servidor para acionar a redefinição do cronômetro, mas isso pode ser um grande problema.Acho que pode não haver uma correção completa adequada para você, exceto talvez reescrever o manipulador de sessão.
Desculpe, não pude ser mais específico, se tiver oportunidade, perguntarei aos nossos desenvolvedores do Symfony se eles conhecem uma solução melhor.
Você pode usar
all:
.settings:
timeout: false
você sempre pode definir o tempo limite para um número grande (como 10 dias ou mais)
all:
.settings:
timeout: 864000