会话混淆了PHP

时间:2010-07-09 07:34:21

标签: php session centos

您好我们在一台集中式专用服务器上为大约500名用户在线操作系统。我们的应用程序用PHP编码。最近当我们有一个合理的负载大约100 -150用户会话开始混淆。例如,如果用户在一段时间后登录为A,则会话切换到同时登录的用户B.系统已运行一年多,这是我们第一次遇到问题。

服务器正在运行Centos。这是服务器端的任何内容,还是代码中的内容。任何帮助非常感谢。

3 个答案:

答案 0 :(得分:1)

您应该调查的几种可能性

  • 缓存:如果您正在使用缓存,那么可能就是这种情况(缓存被重新生成并错误地提供给用户)
  • 由于某些原因,会话未到期。去PHP存储会话的地方(它是一个目录,它取决于你的php.ini),看看有什么。如果有数千个文件,那么您的过期策略就会出现问题。
  • 中间的代理:错误配置的缓存代理也可能会干扰登录程序(最近移动用户遇到了您的问题)

答案 1 :(得分:1)

刚刚发布了对其他用户几分钟后问same question的回复。

我同意Palantir的第一和第三点 - 但第二点非常非常不可能是问题的原因。

您使用的是客户会话处理程序吗?默认处理程序适用于数千人。

答案 2 :(得分:0)

首先,确保您的会话即将到期并正确清理。其次,请确保您的会话ID随机化足够好。这两个问题都可能导致碰撞。