由于某种原因,php会话cookie文件没有存储在默认tmp目录中的XAMPP上,我运行了整个XAMPP搜索session_id()并且没有结果。任何想法??
有一个文件“sess_6mkb82rg31nmgjmf7i3ee7mjif”,但它似乎与客户端cookie的格式不同,并且不是正确的会话ID。正确的是跨多个页面加载“u8c6ldb8dcpddr55d542vodtpr”。有数据库查询编码到我找到的文件中。我不确定这可能是什么。但是它位于存储会话的正确目录中,因为有一个名为why.tmp的文件,它表示不删除会话文件。
我要做的是找到会话文件并将内容复制到具有新id的新文件,因为我已经看到在stackoverflow上建议每个页面加载创建一个新的id以减少黑客攻击的风险会话固定。
我确信代码在从虚拟服务器获取后不会更改会话ID,因为到目前为止我只是在获取旧会话文件的内容。
我构建了一个成功运行的框架,除了找到会话文件之外,会话没有问题。它必须存储在XAMPP目录之外,否则数据将保存在另一个文件中。
谢谢你的时间!
答案 0 :(得分:0)
php手册中session_regenerate_id()顶部附近有一条警告,指出在不稳定的网络上,您可能会丢失会话数据。但是由于没有明显的原因,我决定回过头来看看这些例子,并且在手册的以下标题下有一个解决这个问题的示例:
示例#2通过session_regenerate_id()
避免会话丢失