session的问题

handsome0916 2010-05-27 03:55:27
asp和asp.net的session是不同站点间独立的,在asp里,例如我重新打开IE(不是点击该站点页面打开的IE,而是自己重新在桌面打开一个IE),那么就算是打开同一站点,session在两次打开的会话间也是独立的。

但是在php里不是这样,只要任何一个页面(就算不是同一会话打开的页面)没有关闭,session也会被保存下来,即使重开IE打开另一个会话,session一样能读取出来

我想php像ASP一样,保存的session不要被新打开的会话的IE读取行不行?我想只能被本次会话的所有页面读取,而不想要把所有不相关的页面关闭了,session才会消失,应该怎么配置。

意思就是说,我想假如我两次通过桌面双击打开的会话,即使打开的是同一站点,session在两次会话都是独立的,像ASP一样,应该怎么配置,
...全文
67 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
foolbirdflyfirst 2010-05-27
  • 打赏
  • 举报
回复
本地怎么会有session呢?本地浏览器存的是cookie,根据第一次往某个站点发送请求后得到的http返回头Set-cookie项,浏览器会往本地对应的cookie文件记录cookie,文件内记录cookie数据所属的域名,key,value,expire...等等,下次浏览器向相同域名发送时,就会往http 请求头里加上cookie项,session use cookie方式下,session id就是通过请求头里的cookie项发送至服务端。


我想假如我两次通过桌面双击打开的会话,即使打开的是同一站点,session在两次会话都是独立的,像ASP一样,应该怎么配置
===========================================================================
意思就是浏览器关闭后,cookie失效.

php.ini文件里有相应的配置值

; Lifetime in seconds of cookie or, if 0, until browser is restarted.
;这里设置为0的话,那么每次重新启动浏览器往本域名发送请求都会是全新session.
session.cookie_lifetime = 0

; The path for which the cookie is valid.
session.cookie_path = /

; The domain for which the cookie is valid.
session.cookie_domain =

上面的设置也可通过php函数session_set_cookie_params进行设置,必须在session_start()之前
yinuosky 2010-05-27
  • 打赏
  • 举报
回复


即使你关闭了页面, 你不点击注销, 浏览器中也存在session 的~ 除非你点击注销!
myhope88 2010-05-27
  • 打赏
  • 举报
回复
路过,帮顶下
YHL27 2010-05-27
  • 打赏
  • 举报
回复
学习。。
xuzuning 2010-05-27
  • 打赏
  • 举报
回复
只要你的cookie独立,则session就独立

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧