PHP的session_regenerate_id()冲突是否免费?

时间:2019-12-29 22:11:46

标签: php session sessionid session-hijacking

我目前正在使用PHP(7.2)开发一个项目。我在每个请求上都调用session_regenerate_id()函数,以防止会话劫持攻击(这在检测被劫持会话的整个过程中只是一小部分)。

问题如下:我希望在服务器上管理许多会话,是否应该检查新的session_id()值(在我称为session_regenerate_id()之后)是否已被另一个(现有)会话使用?换句话说:session_regenerate_id()是否没有冲突?

我知道函数session_create_id在活动会话(会话开始后)中使用时不会发生冲突,但是手册中并未提及session_regenerate_id函数。

有什么想法/建议吗? 谢谢。

1 个答案:

答案 0 :(得分:1)

是的。 session_regenerate_id calls session_create_id,因此也没有碰撞:

sid = php_session_create_id((void**)&data);