为什么我必须使用一些persistent-login模块让我的用户登录 Drupal 6 的时间更长。
为什么更改 php.ini 或 settings.php 不起作用?
从“webtools”我看到我的 cookie 在第二天就过期了,但几个小时后它碰巧让我退出了。这就像自发的行动,没有遵循/预测的模式。
为什么这个“keep-alive”登录存在于 drupal 中?
为什么我必须使用一些persistent-login模块让我的用户登录 Drupal 6 的时间更长。
为什么更改 php.ini 或 settings.php 不起作用?
从“webtools”我看到我的 cookie 在第二天就过期了,但几个小时后它碰巧让我退出了。这就像自发的行动,没有遵循/预测的模式。
为什么这个“keep-alive”登录存在于 drupal 中?
您不必使用持久性模块来实现更长的登录时间。您可以简单地调整Drupal 实例文件中ini_set()的 PHP 设置调用(尤其是和)。session.*settings.phpsession.cookie_lifetimesession.gc_maxlifetime
如果调整这些对您不起作用,您应该确保您的服务器配置允许从 PHP 覆盖它们。
此外,Drupal 使用标准的 PHP 会话存储机制——如果在同一台服务器上运行其他 PHP 应用程序,它们可能会干扰您的会话生命周期设置,具体取决于存储路径配置。有关这方面的信息,请参阅此答案中的第 2 点。
持久登录模块旨在使配置更容易,但特别添加了更多功能,例如允许通用记住我选项,同时仍然需要对敏感操作(如更改密码)进行重新身份验证,以最大限度地减少与长时间登录相关的风险。
检查从模块项目页面链接的这篇文章,以及从那里链接的这篇文章,以获得有关持久登录处理的一些深入解释。
Drupal 覆盖了 include/bootstrap.ini 中的内部 php 会话保存处理程序,并在那里有一些非标准会话代码。虽然没有跟进。
除此之外,Drupal 的 settings.php 将覆盖 php.ini。