是否会不时自动重新生成会话ID?

时间:2012-02-21 10:24:31

标签: php apache session session-state sessionid

第一次调用session_start()时,将生成一个新会话。稍后,当再次调用session_start时,会话将使用cookie中的会话ID(或者在服务器上打开session.use_trans_sid时从GET / POST请求)恢复会话。< / p>

为了增强安全性,可以不时地为用户重新生成新的会话ID,即使他/她没有再次注销/登录。

此行为是否自动发生,这意味着这是大多数Web服务器上的默认设置?还是需要手动编码?

1 个答案:

答案 0 :(得分:2)

它不会自动发生。

您必须使用session_regenerate_id()

  

session_regenerate_id()将使用new替换当前会话ID   一,并保留当前的会话信息。

最好每次更改用户的权限级别时更改会话ID(最简单的例子是登录时)。