PHP session 超时太快

标签 php session

我在我的网站上使用 php Sessions,它们似乎在随机间隔“消失”。我不知道它们是否由于不活动而超时,或者我的代码是否有问题,但是有没有什么方法可以控制 session 何时过期?

比如我可以在我的代码中添加一些东西或更改 php.ini 文件中的一些东西吗?

更新- 所以只是在这里更新,我切换了主机, session 神奇地开始工作了。我不知道出了什么问题,但显然他们不想正常工作。

最佳答案

随机过期是多个应用程序共享 session 数据目录的典型症状:session.gc_maxlifetime 时间最短的那个可能会从其他应用程序中删除数据。原因:

  1. PHP默认将 session 文件存储在系统临时目录中。
  2. 内置文件处理程序不跟踪谁拥有什么 session 文件(它只是将文件名与 session ID 匹配):

    Nothing bug good old files

我的建议是为您的应用程序配置一个私有(private)的自定义 session 目录。这可以通过 session_save_path() function 来完成或设置 session.save_path configuration directive .请查看您的框架文档,了解有关如何在您自己的代码库中执行此操作的准确详细信息。

关于PHP session 超时太快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3476538/

相关文章:

php - 将 session 变量输入 mysql 时出现问题

php - Laravel 内存异常 'Database/Connection.php:301'

php - 使用 session 的多步注册表 PHP/MySql

node.js - Express js 在哪里保存 session 详细信息?

javascript - 拉取AJAX数据时如何忽略Adsense?

session - 用twig显示 session 参数

php - CSS 不适用于其中包含 "/"的页面

php - 哪些模板语言适用于 JS 和 PHP?

php - 使用一个查询更新多行

session 持续时间超过谷歌分析中的默认值(30 分钟)