首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >会话的默认生存期是多少?

会话的默认生存期是多少?
EN

Stack Overflow用户
提问于 2008-10-01 08:34:13
回答 4查看 177.7K关注 0票数 68

如果我访问一个调用session_start()的页面,当我刷新该页面时,我必须等待多长时间才能获得新的会话ID?

EN

回答 4

Stack Overflow用户

发布于 2008-10-01 08:42:05

这取决于你的php设置...

使用phpinfo()并查看会话章节。诸如session.gc_maxlifetimesession.cache_expiresession.cookie_lifetime之类的值会影响会话生存期

编辑:就像Martin之前写的那样

票数 5
EN

Stack Overflow用户

发布于 2012-04-30 06:47:19

根据PHP.net网站上的一位用户的说法,他保持会话存活的努力失败了,所以他不得不做一个变通办法。

<?php

$Lifetime = 3600;
$separator = (strstr(strtoupper(substr(PHP_OS, 0, 3)), "WIN")) ? "\\" : "/";

$DirectoryPath = dirname(__FILE__) . "{$separator}SessionData";
//in Wamp for Windows the result for $DirectoryPath
//would be C:\wamp\www\your_site\SessionData

is_dir($DirectoryPath) or mkdir($DirectoryPath, 0777);

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

}

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", $DirectoryPath);
session_start();

?>

在SessionData文件夹中,将存储用于保存会话信息的文本文件,每个文件将具有类似于"sess_a_big_hash_here“的名称。

票数 3
EN

Stack Overflow用户

发布于 2012-04-06 20:50:55

但是要小心,在大多数xampp/ampp/...-setup和一些linux发行版上,它是0,这意味着文件永远不会被删除,除非你在你的脚本中这样做(或者通过shell脏)

PHP.INI:

; Lifetime in seconds of cookie or, if 0, until browser is restarted.
; http://php.net/session.cookie-lifetime
session.cookie_lifetime = 0
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/156712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档