专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »PHP教程 » phpcookie:PHP的Cookie技术介绍 »正文

phpcookie:PHP的Cookie技术介绍

来源: 发布时间:星期一, 2009年1月12日 浏览:42次 评论:0
  在学习PHP如何设置Cookie的前我们先来了解下Cookie技术

  (1)Cookie技术介绍

   在WEB技术发展史上Cookie技术出现是个重大变革最先是Netscape在它Netscape Navigator浏览器中引入了Cookie技术从那时起World Wide Web 协会就开始支持Cookie标准以后又经过微软

  力推广(微软IIS Web服务器所采用ASP技术很大程度使用了Cookie技术)即在微软Internet Explorer浏览器中完全支持Cookie技术到现在绝大多数浏览器都支持Cookie技术或者至少兼容Cookie

  技术使用

  1)什么是Cookie?

  按照Netscape官方文档中定义Cookie是在HTTP协议下服务器或脚本可以维护客户工作站上信息种方式Cookie 是由Web服务器保存在用户浏览器上小文本文件它可以包含有关用户信息(如身份

  识别号码、密码、用户在Web站点购物方式或用户访问该站点次数)无论何时用户链接到服务器Web站点都可以访问Cookie信息

  通俗地讲浏览器用个或多个限定文件来支持Cookie这些文件在使用Windows操作系统机器上叫做Cookie 文件在Macosh机器上叫做magic Cookie 文件这些文件被网站WebSite用来在上面存储Cookie数据

  网站WebSite可以在这些Cookie 文件中插入信息这样对有些网络用户就有些副作用有些用户认为这造成了对个人隐私侵犯更糟有些人认为Cookie是对个人空间侵占而且会对用户计算机带来安全性危害

  目前有些Cookie 是临时些则是持续临时Cookie只在浏览器上保存段规定时间旦超过规定时间该Cookie就会被系统清除例如在PHP中Cookie被用来跟踪用户进程直到用户离开网站WebSite持续

  Cookie则保存在用户Cookie文件中次用户返回时仍然可以对它进行

  在Cookie文件中保存Cookie些用户会过分地认为这将带来很大问题主要是有些用户担心Cookie会跟踪用户网上冲浪习惯譬如用户喜爱到那些类型站点、爱从事些什么活动等害怕这种个人信息

  旦落入些别有用心家伙手中那么个人也就可能成为大堆广告垃圾对象甚至遭到意外损害不过这种担心压根儿不会发生网站WebSite以外用户是无法跨过网站WebSite来获得Cookie信息所以想以这种目

  来应用Cookie是不可能不过由于些用户理解以及“以讹传讹”些浏览器开发商别无选择只好作出相识响应(例如Netscape Navigator4.0和Internet Explorer3.0都提供了屏蔽Cookie

  项)

  对Cookie技术期待了这么久结果是迫使许多浏览器开发商在它们浏览器中提供了对Cookie灵活性控制功能例如目前两大主流浏览器Netscape Navigator 和 Internet Explorer是这样处理Cookie

  :Netscape Navigator4.0不但可以接受Cookie进行警告而且还可以屏蔽掉Cookie;InternetExplorer3.0也可以屏蔽Cookie但在Internet Explorer4.0中就只能进行接受警告而没有提供屏蔽选项不过在Internet

  Explorer4.0的后更新版本中又加入了屏蔽Cookie功能选项

  此外很多最新技术甚至已经可以在不能屏蔽Cookie浏览器上进行Cookie屏蔽了例如可以通过将Cookie文件设置成区别类型来限制Cookie使用但是非常不幸地是要是你想完全屏蔽Cookie

  话肯定会因此拒绝许多站点页面当今已经有许多Web站点开发人员爱上了Cookie技术强大功能例如Session对象使用就离不开Cookie支持

  尽管今天仍有些网络用户对于Cookie争论乐此不倦但是对于绝大多数网络用户来说还是倾向于接受Cookie因此我们尽可以放心地使用Cookie技术来开发我们WEB页面

  2)Cookie是怎样工作

  要了解Cookie必不可少地要知道它工作原理般来说Cookie通过HTTP Headers从服务器端返回到浏览器上首先服务器端在响应中利用Set-Cookie header来创建个Cookie 然后浏览器在它

  求中通过Cookie header包含这个已经创建Cookie并且反它返回至服务器从而完成浏览器论证

  例如我们创建了个名字为loginCookie来包含访问者信息创建Cookie时服务器端Header 如下面所示这里假设访问者注册名是“Michael Jordan”同时还对所创建Cookie属性如path、

  do、expires等进行了指定

  Set-Cookie:login=Michael Jordan;path=/;do=msn.com;

  expires=Monday,01-Mar-99 00:00:01 GMT

  上面这个Header会自动在浏览器端计算机Cookie文件中添加条记录浏览器将变量名为“login”Cookie赋值为“Michael Jordon”注意在实际传递过程中这个Cookie值是经过了URLEncode思路方法

  URL编码操作 这个含有Cookie值HTTP Header被保存到浏览器Cookie文件后Header就通知浏览器将Cookie通过请求以忽略路径方式返回到服务器完成浏览器认证操作

  此外我们使用了Cookie些属性来限定该Cookie使用例如Do属性能够在浏览器端对Cookie发送进行限定具体到上面例子该Cookie只能传达室到指定服务器上而决不会跑到其他如www.phpq.netWeb站点上去Expires属性则指定了该Cookie保存时间期限例如上面Cookie在浏览器上只保存到1999年3月1日1秒当然如果浏览器上Cookie 太多超过了系统所允许范围浏览器将自动对



  它进行删除至于属性Path用来指定Cookie将被发送到服务器个目录路径下

  介绍说明:浏览器创建了个Cookie后对于每个针对该网站WebSite请求都会在Header中带着这个Cookie;不过对于其他网站WebSite请求Cookie是绝对不会跟着发送而且浏览器会这样直发送直到Cookie过期为止Cookie技术是个非常有争议技术自经诞生它就成了广大网络用户和Web开发人员个争论焦点些网络用户甚至包括些资深Web专家也对它产生和推广感到不满这倒不是Cookie技术功能太弱或别技术性能上原因而仅仅是他们觉得Cookie 使用对网络用户隐私构成了危害Cookie是由Web服务器保存在用户浏览器上小文本文件它包含有关用户信息(如身份

  识别号码、密码、用户在Web站点上购物方式或用户访问该站点次数) 那么Cookie 技术究竟怎样呢?是否真给网络用户带来了个人隐私危害呢?看了上面资料您心中应该有个度量了吧



0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: