【问题标题】:Can we have a session termination trigger with Apache while using PHP?我们可以在使用 PHP 时使用 Apache 触发会话终止吗?
【发布时间】:2016-12-26 15:21:21
【问题描述】:

我遇到了一个要求,我想在会话停止时立即触发脚本。我正在创建一个会话,直到客户端浏览器关闭,我的平台是 CentoS 7 上的 PHP 5.6,我使用 Apache 作为 Web 服务器,会话保存在 redis 数据库中。

感谢您对此的大力支持。

问候 莫赫塔西姆

【问题讨论】:

标签: php apache session


【解决方案1】:

我猜你正在寻找一种用于会话的 PHP 中的 atexit() 函数。简短的回答:不可能那样做。 也许您可以实现一个在服务器上运行的程序(例如通过 cron 每隔一分钟左右运行一次)来检查“session.save_path”目录中的文件。该变量应该在您的 php.ini 配置文件中。 您必须跟踪这些文件,然后检查它们何时不再存在。 PHP 中还有一个名为 session_save_path() 的函数,如果您在 PHP 中执行此程序,它可能会很有用。 对不起,我不能在这里提供更多帮助。我在这里建议我没有做过的事情。

【讨论】:

  • 感谢 Zsram,是的,您所说的非常有道理,是的,它可以在数据库的帮助下大大实现,但让我们看看其他人是否以其他方式实现了相同的解决方案。跨度>
  • 当然。虽然我没有看到任何其他方式来实现您所需要的,因为您在服务器上的 php 程序无法知道用户何时关闭了他的浏览器。我相信服务器上的 Apache PHP 模块应该进行某种“会话垃圾收集”,也许在同一个 session.save_path 目录中查找从终止会话中删除文件。如果我很好地理解了您的问题,您必须效仿。问候。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-06
  • 1970-01-01
  • 1970-01-01
  • 2021-09-16
  • 1970-01-01
  • 2018-01-08
相关资源
最近更新 更多