session - 如何禁止 Symfony 将 _sess 文件写入我的/tmp 目录

我是 symfony 的新手,负责一个不是我建立的站点。由于某种原因,该站点位于实时服务器上但以开发模式运行。 - 我不确定为什么??

除此之外 - 该网站不断将 _sess 文件写入我的/tmp 目录。每个_sess 文件的内容完全相同。见下文:

_symfony2|a:3:{s:10:"attributes";a:0:{}s:7:"flashes";a:0:{}s:6:"locale";s:2:"en";}

我真的需要所有这些文件吗?谁能建议一种禁用此功能的方法?

提前致谢

最佳答案

Symfony2 的默认 session 存储将 session 信息写入文件。这些文件写入的位置由配置参数 framework.session.save_path 确定。它的默认值为 %kernel.cache.dir%/sessions。这意味着在 symfony 的默认安装中, session 文件将被写入环境的缓存目录。

但是,这可能会成为一个问题,因为每次部署应用程序时都必须清除缓存目录,从而使所有用户注销。因此,您的应用可能已配置(很可能在 config.yml 中)以将 session 文件存储在/tmp 中。

据我了解,过期的 session 应该在某个时候被垃圾收集。 Symfony 也有一些影响这一点的配置参数 - 请参阅 FrameworkBundle Configuration .我不知道您的网站有多少流量,但显然您确实需要事件 session 的 session 文件。如果您认为您有很多过期 session ,您可以尝试调整 gc 配置参数。

或者,如果/tmp 中的 session 文件是您可以重新定位它们的具体问题(通过更改 framework.session.save_path 的值)或 use PDOSessionHandler to store sessions in the database .

https://stackoverflow.com/questions/16896070/

相关文章:

ruby-on-rails - 呈现带有错误和文件输入的表单

math - 双轮廓 - 噪声函数的法向量

maven - 如何在 ftp 中部署 Maven Web 应用程序?

asp.net - URL 重写出站规则和自定义错误页面

python - 解析csv文件并使用python调用rest api

google-chrome - CORS 错误仅发生在 Chrome 中的某些 XHR 上

c# - 如何上传文件并将其保存在本地计算机的特定文件夹中?

node.js - 为什么process.memoryUsage()不输出 Node 进程消耗的内存

ruby-on-rails - 从复杂的 Rails 查询导出到 CSV

iphone - 媒体查询不适用于 iPhone 的邮件