如何通过 apache 清除 PHP $_SESSION?

Posted

技术标签:

【中文标题】如何通过 apache 清除 PHP $_SESSION?【英文标题】:How to clear PHP $_SESSION by apache? 【发布时间】:2010-12-09 00:16:39 【问题描述】:

我重启了 apache,但是会话没有过期!

【问题讨论】:

【参考方案1】:

为什么不使用session_destroy() 来销毁客户端的会话?

【讨论】:

那个,你可以把时间限制设置为负3600什么的。 它只会销毁特定用户的会话,但我想销毁所有! 我想销毁所有用户的会话。【参考方案2】:

我在开发时通常会创建一个取消设置和销毁所有会话的页面。所以每次我需要破坏会话时,我都会运行脚本。例如。 www.example.com/destroySession.php

destroySession.php 包含类似的内容(仅作为示例)

session_start();
unset($_SESSION['name']); //If only one session variable is used
session_destroy();

【讨论】:

【参考方案3】:

如果你有:

session.save_handler = files

在您的 php.ini 文件中,我相信您会默认使用该文件,然后会话数据将存储在文件中。因此弹跳服务器不会破坏它们。

【讨论】:

【参考方案4】:

删除 php.ini 中定义的临时目录中的所有文件。

【讨论】:

如果您需要一次终止所有会话,我相信手动删除文件将是一种解决方案。但我希望这是一个永远存在的情况。 这会破坏所有用户的会话。 如果您不知道这些文件的位置,请在您的 phpinfo 中查找“session.save_path”值。对我来说是/var/lib/php/session

以上是关于如何通过 apache 清除 PHP $_SESSION?的主要内容,如果未能解决你的问题,请参考以下文章

PHP执行Session与前端JS之间的关系

如何清除 Apache 中的所有缓存?

php,js清除cookie

如何在 apache 中启用 php7 模块?

如果新版本的脚本正在运行,如何清除 PHP APCu 缓存?

如何在php中获取会话数组值?