php会话在重定向时丢失

时间:2014-04-22 15:49:41

标签: php session

我正在尝试使用安全会话。这是我在研究时采用的一段代码。 遗憾的是,重定向标头时会加载会话。 有人可以解释一下发生了什么,并指出我正确的方向。

这是代码

if(!isset($_SESSION))
    {
        $dir_path = ini_get("session.save_path") . DIRECTORY_SEPARATOR . _SESSION_DIR;
        if(!is_dir($dir_path)) mkdir($dir_path);

        if( ini_get('session.use_trans_sid') == true) {
            ini_set('url_rewriter.tags' , '');
            ini_set('session.use_trans_sid' , false);
        }

        $lifetime = 60 * 60 * 24 * 1;
        //$lifetime = 60;
        ini_set('session.gc_maxlifetime' , $lifetime);
        ini_set('session.gc_divisor' , '1');
        ini_set('session.gc_probability' , '1');
        ini_set('session.cookie_lifetime' , '0');
        ini_set('session.save_path', $dir_path);
        session_name(_SESSION_NAME);
        session_start();

1 个答案:

答案 0 :(得分:0)

如果您要检索在上一页上创建的会话,则必须确保在编写会话后使用session_write_close()。然后,为了在后续页面中使用它们,您必须调用session_start() 之前,您可以使用它们。您可以在sessions here

上查看更多内容