仅在特定网络上丢失会话

仅在特定网络上丢失会话

笔记:抱歉,我不是服务器管理员,但我遇到的问题可能与服务器有关,或者与服务器和网络有关。我对服务器或网络没有太多技术信息,因此如果事实不清楚或缺乏,我深表歉意。我只是不知道。我并不期待在这里得到解决方案(如果我们能得到解决方案,那就更好了),但至少可以帮助我解决一些我可以询问服务器管理员的问题。我无法回答来自 ISP 的特定网络问题,但也许我可以通过本地计算机或网络上的一些工具来监控一些东西,从而深入了解下面描述的问题。如果我的问题发错了论坛,请问您能将其迁移吗?这个问题有点模糊:是代码还是非代码、是服务器还是非服务器、是网络还是非网络?

我的客户有一个 Web 应用程序,该应用程序不断丢失会话(丢失会话定义为用户的登录会话被破坏,并且用户被注销),但仅在一个网络上发生,即南非的 Telkom,并且仅在生产服务器上发生(而不是 UAT 服务器)。我们已经使用光纤和 LTE 连接进行了测试。

我们在代码中为解决这个问题所做的实现不属于本论坛的职权范围,但我只想说,我们已经做了我们的研究表明可能是错误的一切。

我可以告诉你的是:

  • 服务器(prod 与 UAT)的 PHP INFO 存在一些差异,对我来说最值得注意的是,访问 UAT 服务器时的 IP 地址是客户端网络的网络地址(可能表示某种 VPN 或屏蔽或其他什么?),而访问生产服务器时的 IP 地址实际上是 ISP 提供的 IP 地址。
  • UAT 上的 POST_MAX_SIZE 为 64MB,而 PROD 上的 POST_MAX_SIZE 仅为 8MB。我知道这与 PHP 有关,但在设置上存在显著差异。
  • 在没有专门使用缓存标头发送 Ajax 请求的页面上,生产服务器正确地进行缓存,而 UAT 服务器无论如何都不会进行缓存,这表明服务器的 Apache 或 .htaccess 设置存在差异。

相关内容