fender0107401 发表于 2012-12-26 08:21

session到底能不能跨页啊?

就是说,如果完全没有cookie的支持,我每次session_start()之后,是不是就能得到同样的SID呢?我感觉是能。

我看的书没有说的特别清楚。

还有就是服务器是如何确定打开某个地址的是我呢?就是说我打开一页,服务器是怎么确定客户端应该使用的SID呢?

maochanglu 发表于 2012-12-26 13:11

url后面跟着尾巴的。

linux_c_py_php 发表于 2012-12-26 15:30

实现原理不懂可不行.

session是依靠一个session id的cookie在客户端和服务端之间维护会话的, 服务端映射session id -> session data的映射, 并且通过set-cookie将session id在会话创建时告知浏览器, 之后浏览器访问该url会提交session id的cookie, 服务端映射得到对应session data.

楼主抓包看一眼PHPSESSIONID就知道了。

fender0107401 发表于 2012-12-26 16:53

回复 3# linux_c_py_php

哈哈,谢谢了,我一开始也以为是通过cookie来记录SID的。

但是我看head first ch07里面的代码里面没有涉及的SID的代码,所以有些疑问,是不是相关操作都在session_start()里面完成了?

xinglu1983 发表于 2012-12-28 14:57

php.ini里可以设置,是通过cookie传sessionid还是通过url,默认是cookie。
相关操作应该是在session_start完成的。
页: [1]
查看完整版本: session到底能不能跨页啊?