Php 会话可以在一台计算机上工作,但不能在另一台计算机上工作

Php 会话可以在一台计算机上工作,但不能在另一台计算机上工作,php,session,internet-explorer,Php,Session,Internet Explorer,关于会话丢失的几个主题,包括Github上的一个广泛主题,但似乎没有一个涉及到为什么会话可以在一台计算机上工作,而不能在另一台计算机上工作 我在一个小型管理系统上有200多个用户。登录由常用用户名和密码控制,在验证时,用户会看到一个欢迎页面,其中一个会话由常用的php会话_start()启动。这在Edge、IE、Chrome和Firefox以及据我所知的Safari上都起到了作用,因为有些用户在Apple上,但我无法访问Apple设备。我最近更换了主机,新主机使用LiteSpeed 我有两个用户

关于会话丢失的几个主题,包括Github上的一个广泛主题,但似乎没有一个涉及到为什么会话可以在一台计算机上工作,而不能在另一台计算机上工作

我在一个小型管理系统上有200多个用户。登录由常用用户名和密码控制,在验证时,用户会看到一个欢迎页面,其中一个会话由常用的php会话_start()启动。这在Edge、IE、Chrome和Firefox以及据我所知的Safari上都起到了作用,因为有些用户在Apple上,但我无法访问Apple设备。我最近更换了主机,新主机使用LiteSpeed

我有两个用户可以在IE中登录并获得欢迎页面(此时会话开始),但当他们请求下一个页面时,会要求他们再次登录,这意味着会话已丢失。Cookie/会话被关闭的明显原因已经解决

我可以使用他们的凭据和登录,并在我的计算机上使用IE、Edge、Firefox和Chrome进行工作。如果使用不同的浏览器,一个用户可以登录并工作。我正在等待第二个用户是否可以使用其他浏览器。我知道还有其他用户使用IE没有问题


在我切换主机并开始使用LiteSpeed之前,我不确定这个问题是否存在,这可能只是巧合,但问题似乎确实是在那个时候出现的,但我仍然很困惑,为什么会话在一些运行IE的计算机上保持不变,而在其他计算机上却不保持不变。赞赏您的想法。

这似乎是一个愚蠢的问题,但只是为了检查您的理智。。。您确实在共享
会话_start()是否正确?每个页面都需要这样来读取与会话相关联的存储变量,例如登录验证或其他

尝试添加来自php论坛的上述会话\u start:

if(strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE')) {
    session_cache_limiter("public");
}

是的,session_start()肯定在所有页面上。奇怪的是,它在某些计算机上运行良好,而在其他计算机上运行不正常,而且据我所知,似乎只是IE导致了一个问题。修改答案以包含MSIEThanks的脚本,我将尝试一下。我想它需要在每次会议开始()之前进行,所以这需要一些组织。是的。至少在两个位置尝试一下,这样您就可以在第二页上测试它,看看是否仍然存在问题。您是否可以显示您在php.ini上所做的任何特定自定义?人们可能会因为移动主机和从旧DNS缓存旧数据而遇到问题,让每个人都清除他们的网站浏览器历史记录,看看这是否会使问题消失?谢谢,我会尝试一下。