以图明志

PHP服务器脚本

[专题] PHP安全编程:session劫持的防御

session数据暴露与劫持
会话数据常会包含一些个人信息和其它敏感数据。基于这个原因,会话数据的暴露是被普遍关心的问题。一般来说,暴露的范围不会很大,因为会话数据是保存在服务器环境中的,而不是在数据库或文件系统中。因此,会话数据自然不会公开暴露。最常见的针对会话的攻击手段是会话劫持。它是所有攻击者可以用来访问其它人的会话的手段的总称。

Web设计理念

cookie与session的运作机制讲解

详细了解这两种机制
具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。同时我们也看到,由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于cookie机制来达到保存标识的目的,但实际上它还有其他选择。

PHP服务器脚本

PHP的session与cookie的基本使用介绍

跟踪和判断浏览者在整个网站的活动
很多时候,我们需要跟踪浏览者在整个网站的活动,对他们身份进行自动或半自动的识别(也就是平时常说的网站登陆之类的功能),这时候,我们常采用Cookie与 Session来跟踪和判断。Session信息是存放在server端,但session id是存放在client cookie的。Cookie是一种在远程浏览器端存储数据并以此来跟踪和识别用户的机制。

PHP服务器脚本

PHP session的工作原理

介绍一下session的机制
session是在服务器端保持用户会话数据的一种方法,对应的cookie是在客户端保持用户数据。HTTP协议是一种无状态协议,服务器响应完之后就失去了与浏览器的联系,最早,Netscape将cookie引入浏览器,使得数据可以客户端跨页面交换,那么服务器是如何记住众多用户的会话数据呢?

PHP服务器脚本

PHP session错误提示与调试

session这个机制不了解的话可能会遇上这些问题
错误提示:Warning: Cannot send session cookie - headers already sent 这一类问题,原因是你在程序中使用session_start()时,之前已经有实际的html内容输出了。或许你说,我没有啊,我只不过是echo或print一条消息了。很抱歉,你的echo或print语句所产生的输出,就是实际的html内容输出。

PHP服务器脚本

PHP session有效时间和回收机制

介绍session的一些使用原理
修改php中的session过期时间可以修改php配置文件php.ini中的session.gc_maxlifetime即可。当php每发出一次请求时,会有1/100的概率(默认值)触发"session回收"。如果"session回收"发生,那就会检查/tmp/sess_*的文件,如果最后的修改时间到现在超过了1440秒(gc_maxlifetime的值),就将其删除,意味着这些session过期失效。

PHP服务器脚本

PHP session 的运行流程

session 的执行原理分析
浏览器和服务器采用http无状态的通讯,为了保持客户端的状态,使用session来达到这个目的。然而服务端是怎么样标示不同的客户端或用户呢?这里我们可以使用生活中的一个例子,假如你参加一个晚会,认识了很多人,你会采取什么方式来区分不同的人呢!你可能根据脸型,也有可能根据用户的名字,或者人的身份证,即采用一个独一无二的标示。

PHP服务器脚本

从两种handler看PHP的session机制

更深入去理解Session
session_start()是session机制的开始,它有一定概率开启垃圾回收,因为session是存放在文件中,PHP自身的垃圾回收是无效的,SESSION的回收是要删文件的,这个概率是根据php.ini的配置决定的,但是有的系统是 session.gc_probability = 0,这也就是说概率是0,而是通过cron脚本来实现垃圾回收。

PHP服务器脚本

PHP Session有效期的相关问题

深入探讨session的机制
Session处理是所有的Web应用都必须面对的问题。PHP中对session有效期的处理,和其他的解决方案有着很大的不同,这是和PHP的工作机制相关的。在传统的client/server应用中,对于session失效的情况,可以交给网络协议自己来处理。

PHP服务器脚本

PHP session使用经验汇总

全面了解PHP的session
Session 的中文译名叫做“会话”,其本来的含义是指有始有终的一系列动作/消息,比如打电话时从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一个 session。目前社会上对 session 的理解非常混乱:有时候我们可以看到这样的话“在一个浏览器会话期间,...”,这里的会话是指从一个浏览器窗口打开到关闭这个期间。

PHP服务器脚本

[专题] PHP函数补完:session_id()

存取目前 session 代号
session_id() 存取目前 session 代号。语法: string session_id(string [id]); 本函数可取得或者重新配置目前存放 Session 的代号。若无参数 id 则表示只有取得目前 Session 的代号,加上参数则表示将 Session 代号设成新指定的 id。输入及返回均为字符串。

PHP服务器脚本

[专题] PHP函数补完:session_name()

存取目前 session 名称
session_start()是session机制的开始,它有一定概率开启垃圾回收,因为session是存放在文件中,PHP自身的垃圾回收是无效的,SESSION的回收是要删文件的,这个概率是根据php.ini的配置决定的。session会判断当前是否有$_COOKIE[session_name()];session_name()返回保存session_id的COOKIE键值,这个值可以从php.ini找到。
1 / 1 首页 < Prev 1 Next > 尾页 页码: