Php ZF2-页面更改/刷新时的会话转储
上周我问了一个仍然没有解决的问题(很不幸)。以下是链接: 今天我要开始一个新问题,因为我找到了更多可以理解的线索来解释我的问题 这很简单: Zend Framework 2和/或PHP在每次加载或刷新页面时转储/清除我的会话容器。 不管有没有AJAX调用,它都是这样工作的 无论我做什么,我都无法持久保存会话数据,因为所有数据都会永久重置 我尝试了网络上的很多东西,比如:Php ZF2-页面更改/刷新时的会话转储,php,apache,session,zend-framework,zend-framework2,Php,Apache,Session,Zend Framework,Zend Framework2,上周我问了一个仍然没有解决的问题(很不幸)。以下是链接: 今天我要开始一个新问题,因为我找到了更多可以理解的线索来解释我的问题 这很简单: Zend Framework 2和/或PHP在每次加载或刷新页面时转储/清除我的会话容器。 不管有没有AJAX调用,它都是这样工作的 无论我做什么,我都无法持久保存会话数据,因为所有数据都会永久重置 我尝试了网络上的很多东西,比如: Init Zend会话管理器(带和不带SessionConfig) 在Zend\Cache\Storage中使用其他存储,
- Init Zend会话管理器(带和不带SessionConfig)
- 在Zend\Cache\Storage中使用其他存储,如memcache
Thx我终于找到了解决方案,我在会话中添加了一个
Zend\Db\ResultSet
。
我认为,因为这个对象太大,它会使会话过载。。。但这只是一个假设
因为我用映射器对象数组替换了ResultSet存储,所以一切正常
顺便说一句,我在互联网上四处查看,没有发现任何关于这类问题的信息
希望这会有所帮助
非常感谢您的帮助,尤其是@timfuntain。对您帮助不大,但这与您配置服务器的方式有关。Thx Sam。我不确定它是否来自服务器。因为我在本地机器(Mac OS X)和远程服务器(Ubuntu服务器)上都有相同的行为。你能看到正在创建的会话吗(例如,你能看到会话文件/会话数据库表中的数据吗)?这种情况是只针对您还是所有用户?您正在使用什么会话超时?在没有任何新信息的情况下,也许您可以压缩重复该问题所需的最低代码量供我们下载,以便我们可以试用?@timfuntain,谢谢您的回答。是的,我可以在会话文件中看到数据,所有用户都可以看到。会话超时设置为30分钟。。。所以我不认为它来自这里。如果你有一个bitbucket帐户,我可以给你一个复制代码的回购访问权限,告诉我你是怎么想的。我的bitbucket用户名是tfountain,我和你有同样的问题。然而,我存储的不是Zend\Db\ResultSet,而是简单的int。然而,会话仍然被Zend清除。你对这种行为有新的解释吗?没有,对不起。我从来没有遇到过存储简单int的问题。您是否检查了会话的php配置?服务器配置?