我与Symfony的4.0 PHP会话即使我将它设置为config/packages/framework.yaml
几天也快到期了。
framework:
{...}
session:
handler_id: ~
cookie_lifetime: 604800
{...}
当用户完成登入过程中,他可以浏览网站上的,如果他几分钟后返回,他并不需要重新登录。
但是,如果他1或2小时后返回(不知道准确)的会话过期,他必须再次登录。
一个似乎工作的解决方案,是改变你在看什么上面:
handler_id: session.handler.native_file
save_path: "%kernel.root_dir%/sessions"
cookie_lifetime: 604800
不幸的是该解决方案解决了开发环境的问题,但坠毁的应用程序一旦我把代码在服务器上。
问题解决了。
问题是的save_path。只需使用在official Symfony Documentation建议的参数。这样,您的cookies将被正确保存。
session:
handler_id: session.handler.native_file
save_path: '%kernel.project_dir%/var/sessions/%kernel.environment%'
cookie_lifetime: 604800