0

我的一个(也是只有一个)最终用户在注销时遇到了一些问题。我发现创建了多个 PHP SessionID,并且旧的 sessionID 超时导致注销。

问题是多个会话 ID。我无法重现这是如何发生的。他们和我一样使用 Firefox。我尝试通过双击桌面图标打开新窗口,转到File -> Open New Window,然后右键单击应用程序中的链接并选择Open Link in New Window。我所做的一切都会打开一个具有相同 SessionID 的新窗口(在我的系统上)。这是预期的行为。

该用户是否可以通过另一种方式打开可能创建单独 SessionID 的窗口?我无权访问他们的系统,只能从我的应用程序中记录数据。

4

2 回答 2

0

绕回这个问题。问题原来是其中一位用户的工作流程问题。问题通过教育解决了。

于 2013-04-16T15:35:01.953 回答
0

他很可能使用不同的Firefox浏览器。

您可以使用PHP 移动检测为您提供浏览器上的所有信息

我想这会证实我的猜测。

firefox 有多种变体,大多数情况下它们发送相同的标头,因此您将不知道它们是否使用 2 个不同的标头:

  1. 火狐(原版)
  2. Tor 项目
  3. 科莫多冰龙
  4. 便携式火狐
  5. ...

我想不出同一个 Session_ID cookie 对同一个域具有相同值的方法。

也许一些不起眼的插件正在与浏览器调和。

FIX: 尝试更改会话 ID 的名称(php 手册)

例子:

<?php

 session_name("My_new_session_id" );
 session_start();

通常要求将会话名称更改为不太明显的名称,例如:“qwerty”

编辑 :

安全会话管理的快速示例:链接

更多信息:OWasp 会话管理备忘单

于 2013-02-19T23:31:22.117 回答