问题
我想在我的Laravel应用程序中为 all 用户清除 all 个会话 .
我尝试了什么
我知道 Auth::logout()
将注销单个用户,但不会注销 all 用户 . 我也尝试从 storage/framework/sessions
删除会话文件 . 两者都没有奏效 .
我正在使用内置的Authentication(例如 Auth
)和运行Laravel 5.2的会话的文件驱动程序 .
如何有效地强制注销所有登录用户,以便他们必须再次登录?
我想在我的Laravel应用程序中为 all 用户清除 all 个会话 .
我知道 Auth::logout()
将注销单个用户,但不会注销 all 用户 . 我也尝试从 storage/framework/sessions
删除会话文件 . 两者都没有奏效 .
我正在使用内置的Authentication(例如 Auth
)和运行Laravel 5.2的会话的文件驱动程序 .
如何有效地强制注销所有登录用户,以便他们必须再次登录?
2 回答
值得注意的是,Laravel实际上只在会话文件夹中存储活动会话;那些被“记住”但尚未主动访问您的应用程序的人不会计入这些会话 . 因此,只删除文件将无法完成作业 .
您还必须清除users表中的所有Remember Tokens,因为此令牌与存储在cookie中的本地令牌一起使用,以在用户重新连接时重新创建会话 .
在app / session.php中,您可以更改cookie值,因此用户将自动注销,因为cookie与配置不匹配