gpt4 book ai didi

php - 在页面重新加载/刷新时重置 session ?

转载 作者:行者123 更新时间:2023-12-04 19:16:30 27 4
gpt4 key购买 nike

我将 AWS 与 Ubuntu LAMP 堆栈一起使用。我通常只是在我的 Mac 上使用 MAMP 来测试东西并使用托管托管服务,例如 GoDaddy,所以这是我第一次使用 AWS。我的老开发人员为我设置了 AWS,所以从那时起我就接管了。

我的代码在 MAMP 上运行良好,但无法在 AWS 上运行。

当用户尝试登录时,我会调用用 PHP 编写的 RESTful API 来验证登录并在成功时设置 session 变量。然后我刷新页面并检查是否设置了 session ,如果设置了我加载不同的 php 文件。

这是我的全部index.php文件:

session_start();
if ($_SESSION['user_login_status'] == 1) {
include("app.php");
} else {
include("login.php");
}

在刷新期间,似乎我的 session 变量正在被破坏/重置。我试过 echo if 之前的 session 值声明,尽管它始终是空白的。

我已经确定的事情:
  • 我正在设置 session_start()在我的 php 文件的最顶部,所以
    那不可能是问题。
  • 我通过 SSH 连接访问 php.ini文件并检查session.gc_maxlifetime1440

  • 它在 MAMP 上运行而不是在我的 AWS 服务器上运行似乎很奇怪。

    最佳答案

    我或多或少有同样的问题。
    是服务器中安装的 PHP 版本造成了这个错误。
    要解决它,只需这样做

    session_start();
    if ($_SESSION['user_login_status'] !== 1) {
    include("login.php");
    } else {
    include("app.php");
    }

    或者
    session_start();
    if ($_SESSION['user_login_status'] != 1) {
    include("login.php);
    } else {
    include("app.php");
    }

    或者
    session_start();
    if ($_SESSION['user_login_status'] === 1) {
    include("app.php");
    } else {
    include("login.php);
    }

    关于php - 在页面重新加载/刷新时重置 session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35929132/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com