Session的工作方式

下面我们来看一下Session是如何工作的。不知你是否知道通过Cookie来实现身份认证的吧。首先生成一个独一无二的Cookie作为用户身份的标志,并在数据库中进行注册。然后通过用户传递来的Cookie和数据库中注册的Cookie进行对照以确定用户的身份。
  Session的工作原理也是这样。
  首先,PHP为建立Session的用户产生一个独一无二的字符串,用来标志这个用户的session。一般将这个字符串称作Session Id。然后“sess”+Session Id为文件名(例如一个Session ID为111,那么文件名为sess_111)在服务器的文件系统中建立一个文件,在文件中保存用户在Session所定义的全局变量的变量名和值。然后再将Session Id作为一个名为PHPSession的Cookie保存在用户端的文件系统中。
  然后,当用户再次连接服务器访问一个PHP脚本时,PHP从用户发来的PEESession这个Cookie中得到用户所在Session的Session Id,并根据Session Id从服务器的文件系统中保存Session信息的文件。最后从这个文件中读出用户在上次连接时所设置的全局变量的值。
  因此,我们可以看到Session的工作原理和我们上一节所介绍的身份认证的工作原理是一样的。所不同的只是Session将信息保存在了服务器的文件系统中,而我们将信息保存在了数据库中。当然使用Session好处就是数据的保存和获取是由PHP自动完成的,而直接使用Cookie的话就需要自己动手进行数据的保存和获取。
  Session利用Cookie的身份标志功能,将用户在浏览网站时需要保存的信息保存在服务器上。这样Session既克服了HTTP协议的缺陷,又防止了信息的泄漏,而且方便了编程者的使用,是一个非常好的解决方案。不过,Session的功能只有PHP4支持,PHP3是不支持Session的。因此使用PHP3进行网站构建的读者只能采用直接使用Cookie的方式。

时间: 2024-08-02 04:46:49

Session的工作方式的相关文章

简单易懂,Session的工作方式(转)

session   下面我们来看一下Session是如何工作的.不知你是否知道通过Cookie来实现身份认证的吧.首先生成一个独一无二的Cookie作为用户身份的标志,并在数据库中进行注册.然后通过用户传递来的Cookie和数据库中注册的Cookie进行对照以确定用户的身份.   Session的工作原理也是这样.   首先,PHP为建立Session的用户产生一个独一无二的字符串,用来标志这个用户的session.一般将这个字符串称作Session Id.然后"sess"+Sessi

Session的工作机制详解和安全性问题(PHP实例讲解)_php实例

我们先简单的了解一些http的知识,从而理解该协议的无状态特性.然后,学习一些关于cookie的基本操作.最后,我会一步步阐述如何使用一些简单,高效的方法来提高你的php应用程序的安全性以及稳定行. 我想大多数的php初级程序员一定会认为php默认的session机制的安全性似乎是有一定保障的,事实恰好相反 – php团队只是提供了一套便捷的session的解决方案提供给程序员使用,至于安全性的话,应该由程序员来加强,这是应用程序开发团队的责任.因为,这里面的方法很多,可以这么说吧,没有最好,只

HTTP Session 的工作原理以及几个思维扩展

大家都知道,HTTP 协议本身是无状态的,Session 的出现解决了这个问题,也被大多数 Web 端采用. 但它背后的实现原理你是否有兴趣了解呢,以及在它基础上的思维发散,和你聊聊. 无状态的 HTTP 大家都知道,我们目前使用的互联网应用层协议基本上都是基于 HTTP 和 HTTPS 的,它们的本身是无状态的, 只负责请求和响应. 我告诉服务器我需要什么,服务器返回给我相应的资源. 如果没有额外处理的话, 服务器是不知道你是谁,更无法根据你是谁给你展现和你相关的内容了. HTTP 协议一开始

session 的工作原理与session用法

先来看一个session实例  代码如下 复制代码 function getsessiondata ($session_name = 'php教程sessid', $session_save_handler = 'files') {     $session_data = array();     # did we get told what the old session id was? we can't continue it without that info     if (array_

c++字符集相关,sprintf_s 工作方式

问题描述 c++字符集相关,sprintf_s 工作方式 sprintf_s 是如何进行格式化字符串检查的?在网上看见的例子:iRt = sprintf_s(szA 8%s"" L""和平""); // 乱码四个字节iRt = sprintf_s(szA 8%s""和平""); // 和平iRt = sprintf_s(szA 8%S"" L""和平"&qu

武汉SEO:浅析搜索引擎的蜘蛛的工作方式

武汉seo今天想聊聊搜索引擎的蜘蛛的工作方式.先说说搜索引擎的原理吧.搜索引擎是把互联网上的网页内容存在自己的服务器上,当用户搜索某个词的时候,搜索引擎就会在自己的服务器上找相关的内容,这样就是说,只有保存在搜索引擎服务器上的网页才会被搜索到.哪些网页才能被保存到搜索引擎的服务器上呢?只有搜索引擎的网页抓取程序抓到的网页才会保存到搜索引擎的服务器上,这个网页抓取程序就是搜索引擎的蜘蛛.整个过程分为爬行和抓取. 一. 蜘蛛 搜索引擎用来爬行和访问网站页面的程序被称为蜘蛛,也可称之为机器人.蜘蛛访问

更贴近业务及用户:交互设计工作方式的转变

引子: 年初时交互设计师与产品经理座谈,议题关于交互设计师应从哪个工作环节切入更能发挥其自身价值.结论是交互随产品经理参与到项目初期需求挖掘阶段,更早的参与了解业务需求及用户需求,与产品经理共同产出PRD(带有用户体验的高保真原型部分由交互设计师着力产出,原型好处:方便用户参与可用性测试.整个产品团队更直观地把握设计要求,优势是显而易见的).取而代之目前项目正式启动,产品经理产出详细的PRD后,交互设计师再参与到项目里参与原型设计,有点迟,能量没能充分释放!另外我们获得了更多机会接触用户,产品实

科技正在改变人们的工作方式和生活习惯

科技正在改变人们的工作方式和生活习惯,颠覆着传统社会的一切. 十年前,或许没有人知道在一年后市场上会出现一个叫iphone的通信产品,更没有人知道在接下来的几年时间里,这个产品会颠覆了大部分人对 手机 .对互联网的认知,甚至这个产品还开创了一个基于移动端的商业生态,也就是大家今天见到的移动互联网生态. 五年前,或许也没有人知道在五年后的今天中国电商会如此发达,你甚至都不用出门,上网就可以购买生活所需的柴米油盐,而且数小时内就能送到你的手中.用不了几年这个过程还会更短,真正做到急需即得,这就是今天

Sarcos Robotics CEO:为什么多任务机器人代表了地球工作方式的未来?

提到机器人,很多人脑海中会浮现<星球大战>中的R2-D2机器人形象:为人类提供重要信息,深入到危险环境,勇敢及时地救人于水火之中.我们清楚,因为人工智能发展有限,现今机器人的能力还不能达到R2-D2一样高超.然而,我们已经看到各种机器人纷纷问世,它们能够行动自如.灵活多变,还能处理各种操作,帮助人们完成任务. 人类智能与机器认知结合,便能创造机器人.在这种结合关系中,多任务机器人依赖人类的指令,同时也能在危险的环境中实时保护人类免受伤害.这些机器人"保护人"是地球.甚至太空