我在 CakePHP 中的身份验证有问题。无论我尝试什么,Cake 要么在每次请求后告诉我我已取消身份验证,要么我仍然通过身份验证,即使我之前关闭了浏览器。
我将用几句话解释我的身份验证系统是如何工作的。用户登录,remember me
选中或不选中复选框。如果选中,我将创建一个 cookie,以便用户在下次访问该站点时自动登录。基本上,当用户关闭他的浏览器时,我需要删除 Cake 存储在浏览器中的所有会话 cookie。这样,当用户回来时,如果他不想被记住,他会看到登录页面,或者remember me
如果他选择存储它,则会自动从 cookie 登录。
问题是我使用 core.php 中的 Session.timeout 和 Security.level 都没有积极的结果。如果我将超时设置为 0,Cake 将在每次请求后取消我的身份验证,因此我无法查看任何页面。如果我为超时设置任何其他值,用户可能会关闭浏览器,当他重新打开它时,他可能仍然登录,因为 Cake 会话没有过期。
总之,我怎样才能在浏览器关闭时自动删除会话cookie?