我正在开发一个基于symfony2(2.5)的应用程序,遇到了一个非常奇怪的问题。
长话短说:在配置文件中。我有这样的Yml文件:
framework:
...
session:
name: "a_given_name"
# THE FOLLOWING LINE CAUSES THE PROBLEM
handler_id: session.handler.native_file
save_path: "%kernel.root_dir%/sessions"
cookie_lifetime: 2629744 #1 month
gc_maxlifetime: 2629744 #1 month
...
和会话不工作!我检查了所有的文件,系统创建了文件,但是那些文件总是空的。
修改配置中与"handler_id"相关的条目。Yml to: "~"一切正常
framework:
...
session:
# CHANGING TO THE FOLLOWING -> IT WORKS
handler_id: ~
...
但是,正如文档中所述,"session.handler. "Native_file "是默认的处理程序…所以它应该可以工作…
有什么帮助吗?非常感谢……
我在运行Vagrant机器时遇到了同样的问题。
我建议将会话从同步文件夹(默认的/var/www/html
)移到新的位置,例如/home/symfony/sessions
framework:
session:
handler_id: session.handler.native_file
save_path: "/home/symfony/sessions/%kernel.environment%"
还有,有帮助的文章:https://coderwall.com/p/h3i5mw/symfony-session-problems-with-vagrant