PHP 使用 cookie 的会话(生命周期和文件)

PHP Sessions with cookies (lifetime and files)

我按照教程使用 cookie 处理会话。我现在有两个问题:

  1. 尽管我已将 session.cookie_lifetimesession.gc_maxlifetime 的值设置为“1209600”
  2. ,但我的生命周期太短(一两个小时)
  3. 我尝试使用以下方法将会话保存到文件中:

    ini_set("session.save_handler", "files");
    session_set_save_handler($session, true);
    session_save_path($rel_path . "/sessions");
    

    其中 $session 是我创建但尚未开始的会话的实例。

现在,当我通过 XAMPP 在本地使用它时,它可以正常工作,但当我在线上传网站时,它就不能正常工作。我想问题出在我的虚拟主机 www.ovh.com 上,但我不知道如何解决这个问题。有什么想法或建议吗?

我通过添加这行代码解决了这个问题:

ini_set('session.force_path', 0);

与其他 ini_setsession 参数。当我在本地打印 phpinfo() 时(使用 XAMPPsession.force_path 参数在 session 部分不可见), 而它在我的网络托管服务上。这也解决了我的会话生命周期问题,因为它取决于会话文件的存在。