【问题标题】:Why do sessions need to be stored on a sites server? [closed]为什么会话需要存储在站点服务器上? [关闭]
【发布时间】:2014-02-01 18:51:51
【问题描述】:

我只是想知道为什么会话需要存储在站点服务器上...我知道它是因为它无法访问,所以用户会话无法更改,但是为什么需要 cookie?为什么不能只拥有一种始终存储在服务器中的数据容器?

提前致谢。

【问题讨论】:

  • 为什么不吃一种口味的冰淇淋和一种车型
  • 如何将会话连接到用户浏览器?

标签: php session cookies browser server-side


【解决方案1】:

很简单,当您关闭浏览器时,会话存储会被删除,例如,您可以在 cookie 中存储用户名,因此当用户重新访问您的网站时,它们都已填写完毕

【讨论】:

    【解决方案2】:

    HTTP 在设计上是无状态的,您首先需要 cookie 才能拥有会话。当然,你可以为每个 URL 添加一个 phpsessionid,但是你只是把你的 URL 弄得一团糟,然后把状态放在不属于它的地方。

    Cookie 的存在是为了添加少量状态,如果您只是使用 PHP 会话,那么它们只需要存储一个 phpsessionid 就可以了。但是,也许您有用户可以设置的偏好,而不需要使用完整的会话,cookie 提供了一种很好的方法来保存这些数据,而不会占用服务器上的磁盘空间。

    Cookie 和会话(以及现在的本地存储)并不是相互排斥的,请使用正确的工具来完成正确的工作。

    【讨论】:

      猜你喜欢
      • 2020-04-22
      • 2011-04-26
      • 1970-01-01
      • 1970-01-01
      • 2015-02-04
      • 2013-01-04
      • 1970-01-01
      • 1970-01-01
      • 2018-06-06
      相关资源
      最近更新 更多