我正在考虑编写一个会话处理程序(使用session_set_save_handler),它将每个会话变量存储在它自己的文件中。也许我将session_id作为目录,并将每个变量存储在自己的文件中,并使用会话密钥作为文件名。
我的目的是:
有没有人对这样存储会话有意见?这是个好主意吗?不好主意?
答案 0 :(得分:1)
我建议你不要自己写一些东西,然后实施一个已经过试验和测试的解决方案。
以下解决方案符合您在问题中列出的标准:
http://silex.sensiolabs.org/doc/cookbook/session_storage.html
我建议如果您的应用程序已经像您所说的那样已经非常重要,那么您创建一个单独的数据库纯粹用于存储和阅读已经确认的会话。
为了设置,您必须下载使用Symfony2组件的Silex。我建议在您的网站上设置Silex的最佳方法是使用Composer。为简洁起见,我不会介绍如何安装和设置Composer,因为有很多关于如何执行此操作的有用文章。
你不必使用Silex附带的所有东西,但如果你选择沿着这条路走下去,那么使用Silex类库也可能对其他用途有用。
有关设置Silex的说明,请访问以下位置:
http://silex.sensiolabs.org/doc/usage.html
以下链接提供了有关配置会话的更多信息以及有关如何使用它们的示例,但是在页面上提到使用文件存储,您可以忽略与文件存储相关的任何内容:
http://silex.sensiolabs.org/doc/providers/session.html
尽管满足了您指定的要求,但如果建议的解决方案不是您要考虑的,请解释原因,并且我会在需要时提供额外的帮助和支持。