【发布时间】:2008-08-24 16:45:06
【问题描述】:
我使用 PHP MVC 框架 Symfony 构建了一个按需 Web 应用程序。
它有一个烦人的错误 - 会话在大约 15-30 分钟不活动后过期。有一个配置指令可以防止会话过期,但它不起作用。即使像this one 这样的解决方法也没有帮助我。
我打算在可预见的将来不迁移到 Symfony 1.1(修复了这个错误)。
有人去过那里解决了吗?如果能得到一两个提示,我将不胜感激!
【问题讨论】:
我使用 PHP MVC 框架 Symfony 构建了一个按需 Web 应用程序。
它有一个烦人的错误 - 会话在大约 15-30 分钟不活动后过期。有一个配置指令可以防止会话过期,但它不起作用。即使像this one 这样的解决方法也没有帮助我。
我打算在可预见的将来不迁移到 Symfony 1.1(修复了这个错误)。
有人去过那里解决了吗?如果能得到一两个提示,我将不胜感激!
【问题讨论】:
我进行了调查,我的同事同意心跳页面调用应该可以工作,您只需要确保调用的操作确实重置了会话计时器(诸如 ajax 字段完成之类的事情不会自行执行此操作) .
【讨论】:
我工作的公司一直在使用 Symfony,我们使用的解决方法是在用户退出之前使用 javascript 触发警告。我怀疑有一种方法可以对服务器进行“心跳”ajax 调用以触发计时器重置,但这可能会带来很多麻烦。我认为可能没有适合您的完整修复,除了可能重写会话处理程序。
很抱歉,我不能更具体,如果有机会,我会问我们的 Symfony 开发人员是否知道更好的解决方案。
【讨论】:
你可以使用
all:
.settings:
timeout: false
【讨论】:
您总是可以将超时设置为某个较大的数字(例如 10 天左右)
all:
.settings:
timeout: 864000
【讨论】: