我很难过。每个人都说如果你使用session_start,即使打开多个浏览器窗口,你也应该得到一个会话。但是,我的会话似乎是特定于页面的。
当我加载第一页(index.php)时,它给出了一个会话ID:sr51j9hhrjjrvbrfboek15l4e4,带有一个空的$ _SESSION数组
然后我登录一个生成新会话ID的网页(login.php):v2t8844nglg7uvnsrbr6k9ms43,带有各种变量的$ _SESSION数组。
当我重新加载第一页时,它将显示旧的会话ID,而不是预期的新会话ID。它是页面链接的,因为如果我在标签1中复制加载页面2,它将提供与标签2中的页面相同的会话ID,反之亦然。
我添加了规则
CacheDisable / local_files
到httpd.conf文件中没有任何效果。
我使用Apache 2.4(Windows的XAMPP安装)和http://php-login.net高级登录脚本。
返回页首(在HTML标记之前):
在session_start();
require_once( '包括/ connection.php');
接下来是:
echo var_dump($ _ SESSION);
echo session_save_path();
echo'会话ID:'。session_id();
位于body标签页面的顶部。 有什么建议吗?
答案 0 :(得分:2)
session_start()将创建一个可在同一浏览器/选项卡中使用的单个会话。
答案 1 :(得分:0)
好的,在这里找到答案:My session ID's stopped working
一个页面是localhost:8001,而第二个页面是127.0.0.1:8001,服务器将它们视为两个单独的页面,用于会话,同时为同一页面提供服务。