我是 PHP 的新手,我已经阅读了很多关于 cookie 和 session 的教程,但是我对一些事情不是很清楚:
session 值存储在服务器上,只有 session ID 存储在用户计算机中。对吧?
我可以建立一个永不过期的 session ,永远不会从服务器中删除并将 session ID 保存在 cookie 中吗?如果是,怎么办? (请提供一些代码)
在 cookie 中存储密码等数据不好,因为 cookie 不安全?对吧?
黑客有可能使用另一个用户的 session ID 创建 cookie 吗?黑客能否猜出 session 的 session ID,或者更糟的是,猜出每个 session ID 的列表?
对于可以记住用户的良好登录系统(用于用户拥有一些数据的论坛或网站),最好使用 cookie、 session 或两者的组合, session ID 存储在 cookie 中?
请提供一些代码,说明如何将 session ID 存储在 cookie 中,以及如何在知道 session ID 的情况下访问 session
谢谢!
最佳答案
让我们看看...
- 对
- 永不过期的 session ?不是一个好主意:
- 您的服务将充满旧的、无用的 session
- 相反,您应该将一些数据存储在持久的 cookie 中;并在用户稍后回来时使用该 cookie 重新创建 session (例如,自动连接用户)
- cookie 确实不安全:它们未加密存储,并且未加密地通过网络(除非您使用 HTTS)。
- 如果您的黑客可以获取另一个用户的 session ID(通常是通过读取他的 cookie),是的,他可以访问他的 session
- 我会同时使用两者:无论如何,如果使用 session ,您需要一种方法来存储其标识符。
- 将 session ID 存储在 cookie 中?如果配置正确,PHP 会为您做这件事;-)
关于php - PHP中session和cookies的一些问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5765165/