注销后删除用户的会话存在

时间:2012-10-08 14:37:19

标签: php cookies

在浏览PHP中的各种用户注销函数时,我总是遇到session_destory()用于特定用途的远程会话变量,但是他们不使用setCookie()来删除用户的PHP SESSIONID

PHP文档明确指出:

  

为了完全终止会话,要将用户注销,还必须取消设置会话ID。如果使用cookie来传播会话ID(默认行为),则必须删除会话cookie。 setcookie()可能会用于此。

我尝试在Firefox中跟踪Cookie,并使用session_destroy()继续保留PHP SESSIONID的Cookie,在用户下次登录时使用相同的SESSIONID ID。

从用户的计算机注销后远程访问会话ID Cookie是不是总是安全的,如果我无法删除SessionID Cookie会发生什么?

2 个答案:

答案 0 :(得分:2)

只需这样做:

$_SESSION = array();

这样会话就是空的。

不需要(也不增加安全性)就像你尝试一样摧毁它。

答案 1 :(得分:0)

这应该有效:

session_regenerate_id ( true );

功能描述:

session_regenerate_id - 使用新生成的会话ID更新当前会话ID。 它是唯一的参数,默认为false:delete_old_session - 是否删除旧的关联会话文件。