You are here

Drupal专业开发指南 第16章 什么是会话?

老葛的Drupal培训班 Think in Drupal

当一个浏览器第一次请求一个Drupal站点的页面时,PHP会向浏览器发送一个cookie,里面包含了一个随机生成的32位字符串ID,默认称为PHPSESSID。在浏览器第一次访问一个站点时,在返回的HTTP响应头部中包含了一行信息,它就是cookie,如下所示:
 
HTTP/1.1 200 OK
Date: Thu, 17 Apr 2008 20:24:58 GMT
Server: Apache
Set-Cookie: PHPSESSID=3sulj1mainvme55r8udcc6j2a4; expires=Sat, 10 May 200823:58:19
GMT; path=/
Last-Modified: Thu, 17 Apr 2008 20:24:59 GMT
Cache-Control: store, no-cache, must-revalidate
Cache-Control: post-check=0, pre-check=0
Content-Type: text/html; charset=utf-8
 
    在接下来的访问中,浏览器将cookie包含在每个HTTP请求中,用来向服务器出示cookie:
 
GET / HTTP/1.1
User-Agent=Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.14)
Gecko/20080404 Firefox/2.0.0.14
Cookie: PHPSESSID=3sulj1mainvme55r8udcc6j2a4
 

    这样当单个浏览器请求网站页面时,PHP就可以对其进行追踪了。32位字符串ID,也就是会话ID,它有两种功能,首先它可以作为键来读取Drupal存储的会话信息,另外它允许Drupal将会话与单独的用户关联起来。

Drupal版本: