使用Cookie进行PHP身份验证的最佳做法是什么?

Dan*_*ger 6 php authentication cookies

我正在寻找有关如何使用Cookie最好地将身份验证与PHP结合使用的提示和想法.

每个php脚本是否应该检查cookie值以确定用户是否仍然登录?是否应该有一个脚本执行此检查并包含来自其他每个脚本的脚本?php可以从文件系统的不同深度看到cookie值吗?

喜欢:blahblahblah.com/和blahblahblah.com/login/

他们都可以读取cookie吗?

一篇文章有​​很多问题,但谢谢!

mau*_*ris 3

在客户端,没有什么是安全的。

您可以在任何浏览器上轻松更改 Cookie 上的登录标志。因此更建议将登录相关数据保存在 php 的 $_SESSION 上

如果您想延长会话,只需查看session_set_cookie_params()

默认情况下,相同的会话将用于当前域以及该域上的所有路径。因此 blahblahblah.com/ 和 blahblahblah.com/login/ 都可读

当用户登录时,将用户名和密码的哈希值保存在Session中。

在每个脚本开始时,使用数据库中的用户名和密码验证会话的用户名和密码。如果正确,则设置一个标志(例如 $userLoggedIn = true)以在服务器端指示用户已登录。否则为 false。