命令行刷新linux box上的php会话
我在AWS centOS linux上有一个灯堆。更新我的网站后,我想通过清除所有会话强制所有用户重新登录。命令行刷新linux box上的php会话,php,linux,Php,Linux,我在AWS centOS linux上有一个灯堆。更新我的网站后,我想通过清除所有会话强制所有用户重新登录。 最好的方法是什么? 有没有办法清除当前PHP中的所有会话?没有“flush session”命令。通过从会话存储中删除会话,可以实现相同的效果。默认情况下,php将会话存储在文件中,因此通过删除这些文件,可以强制所有客户端重新登录 使用以下配置指令配置会话存储路径: 编辑: 我在centos上找到了默认会话路径。它是/var/lib/php/session 所以命令应该是 rm -rf
最好的方法是什么?
有没有办法清除当前PHP中的所有会话?没有“flush session”命令。通过从会话存储中删除会话,可以实现相同的效果。默认情况下,php将会话存储在文件中,因此通过删除这些文件,可以强制所有客户端重新登录 使用以下配置指令配置会话存储路径: 编辑: 我在centos上找到了默认会话路径。它是/var/lib/php/session 所以命令应该是
rm -rf /var/lib/php/session/*
在第一次执行此操作之前,我建议您进行备份,因为我尚未对其进行测试。这在很大程度上取决于应用程序存储会话的位置。如果您没有在项目中手动重写会话处理程序,它将默认为php.ini文件中的任何路径。要查找php.ini文件,请执行以下操作:
$ find / -name php.ini
在CentOS上,它通常位于/etc/php.ini中
检查php.ini中的会话保存路径(我认为在php-FPM CentOS安装中默认为/tmp):
删除指定文件夹的内容:
$ rm -Rf /var/lib/php/session/*
现在,应清除所有当前用户会话。如果将会话存储在数据库或内存中,您需要通过用于会话管理的任何软件手动清除会话。我得到一个
无法读取目录–var/lib/php/session–权限被拒绝
所以我运行了sudosudo rm-Rf/var/lib/php/session/*
但是会话未被清除更改为apache:sudo chown-Rapache:apache/var/lib/php/session
但我所做的仍然是将所有权更改为本地用户,然后使用sftp
程序转到该文件夹并手动删除该目录的内容哦,不,现在php无法写入会话<代码>警告:未知:无法写入会话数据(文件)。请验证第0行未知中session.save_path的当前设置是否正确(/var/lib/php/session)将所有权从根目录更改为apache
解决了此问题
$ rm -Rf /var/lib/php/session/*