页面刷新时会更改会话ID

时间:2014-03-16 16:41:54

标签: php session ini

我有关于session_id()正在改变每页刷新的问题。

其实我正在使用session的这个功能:

function sec_session_start()
{
   $session_name = 'sec_session_id'; 
   $secure = false; 
   $httponly = true; 
   ini_set('session.use_only_cookies', 1); 
   $cookieParams = session_get_cookie_params(); 
   session_set_cookie_params($cookieParams["lifetime"], $cookieParams["path"], $cookieParams["domain"],
    $secure, $httponly);
   session_name($session_name); 
   session_start(); 
   session_regenerate_id(false); 
}

在每个页面上使用

    include "function.php";
    sec_session_start();

所以我对这个功能表示怀疑,因为如果我只使用session_start(); session_id()没有改变。它保持不变,如果我从该函数调用会话sec_session_start() session_id()更改。

该功能有什么问题?我找不到什么问题。我的所有网站都在使用sec_session_start(),因此我无法更改为session_start()

任何帮助太多的帮助。感谢。

1 个答案:

答案 0 :(得分:0)

我找到了答案:

实际上

 session_regenerate_id(false); 

正在生成新的会话ID,即使它说 false

所以我所做的就是评论session_regenerate_id(false);的行,一切正常。

希望这能帮助一些人。

感谢smozguurs的建议。