2

昨天,我正在为他们的网站在一台服务器上做一些工作。一切正常。今天早上我醒来,我的密码无效。从 IT 部门获得了新密码,然后开始破解代码。

然后我开始收到这些奇怪的错误。例如,我可以登录一个帐户,该帐户在 php.ini 中的会话中存储了一组数据。

这就是有趣的地方。

如果我有一个会话$_SESSION['attributes']['ID'],我可以将其打印出来,并从中获取价值。但是,当我尝试评估它时,我总是得到 false 作为返回值,即使我将它分配给一个变量,比如$x = $_SESSION['attributes']['ID'];

它在整个系统中执行此操作。几周前通过 Q/A 的东西,以及类似的新东西。

我勒个去?

我有 root 访问权限,所以如果是 php.ini 问题,我可以修复它。我只是不知道在哪里看。

你以前见过这个吗?

4

1 回答 1

1

也许几周前我遇到了同样的问题:我能够将数据存储到会话中,并且能够在脚本的相同执行中读取这些值。但是每次重新加载脚本时,数据都丢失了。

简单但很难找到的错误

session.save_path某个管理员每晚都在运行某个奇怪的服务器进程(将文件夹的所有者设置为 root),对于 apache 用户来说,该进程已变得不可写。

我只是将路径更改为upload_tmp_dir(以防同一个管理员再次犯同样愚蠢的错误),会话文本文件可以再次成功存储在硬盘上。

PS 我找不到它,因为 cookie 发送成功并且初始化也工作得很好。但由于 PHP 无法将会话数据写入磁盘,因此脚本死后所有“保存”的数据都丢失了。

于 2013-07-19T18:17:25.927 回答