我有以下的源代码不同的会话ID每次在session_start执行
session1.php
<?php
session_start();
echo session_id();
?>
session2.php
<?php
session_start();
echo session_id();
?>
当访问I session1.php然后访问会话2 .php,我得到了不同的输出。
为什么这样做呢?
我有以下的源代码不同的会话ID每次在session_start执行
session1.php
<?php
session_start();
echo session_id();
?>
session2.php
<?php
session_start();
echo session_id();
?>
当访问I session1.php然后访问会话2 .php,我得到了不同的输出。
为什么这样做呢?
浏览器不会将会话cookie发送回服务器。这可能有两个原因。
如果你在* nix中运行,尝试设置的session.save_path到/ tmp。如果这不起作用,请查看浏览器的Cookie缓存以查看cookie是否确实正在被浏览器保存。
尝试将您的会话cookie存储在数据库中而不是一个服务器上。这为我节省了大量时间和其他会话cookie问题,特别是如果您在共享服务器上。这可能会帮助http://www.raditha.com/php/session.php好运
我想当你保存会话密钥,然后使用类似memcache的东西。 – Stony 2012-10-29 08:20:52
//刚刚检查phpinfo()。session.use_cookies设置为On,但session.save_path没有值。 session.save_path是否可能导致此问题? – Moon 2011-04-27 01:02:43
@Moon这当然很奇怪。在我的phpinfo()中,即使它没有在php.ini中明确提到,它也会被设置。 – Oswald 2011-04-27 09:37:25
我知道这是旧帖子,但只面对与IE相同的问题,并找到了解决方案,所以想分享以防万一有人面临同样的问题。我没有设置我的PHP代码中的所有全局变量和IE浏览器不工作 – 2016-12-15 13:23:35