`

设置Session永不过期,Session有效时间的问题

阅读更多
引用

保持Session的方法:有人说设session.timeout=-1,或小于0的数。这种方法肯定是不行的,session计算时间以分钟为单位,必须是大于等于1的整数。又有人说设session.timeout=99999。这种同样不行,session有最大时间限制。我经过测试发现最大值为24小时,也就是说你最大可以session.timeout=1440,1441都是不可以有,呵呵。本人测试环境:win2003+IIS6.0+ASP3.0。

所以想通过设session.timeout的过期时间让session永不过期是不可能的。写到Cookies里是比较好的方法,网上也有很多这样的教程,这里就不再说了!还有就是用在要保持session的页里设隐藏iframe每隔一段时间(这个时间小于session.timeout的时间)把刷新一次frame里的空页面!实现方法如下:

在要保持session页里加上: <iframe width=0 height=0 src="/blog/SessionKeeper.asp">
</iframe>


同目录下建一下SessionKeeper.asp的文件。 <html>
<head>
<meta http-equiv="Refresh" content="900000;url=sessionKeeper.asp">
<!--每隔900秒刷新一下自己,为了和服务器通讯一下,保持session不会丢-->
</head>
</html>


这种方法还是比较长见的,另外还有一种和上面类似的方法,不过他不是用meta自动刷新嵌套的iframe的方法。他是用javascript:window.setTimeout("functionname()",10000);第隔一段时间时间自动调用一个函数的方法,当然函数里还是要去连接一个空的文件。具体方法如下:

在要保持session面里加上: <script id=Back language=javascript></script>

<script language=javascript>
function keepsession(){
document.all["Back"].src="/blog/SessionKeeper.asp?RandStr="+Math.random();
//这里的RandStr=Math.random只是为了让每次back.src的值不同,防止同一地址刷新无效的情况
window.setTimeout("keepsession()",900000); //每隔900秒调用一下本身
}
keepsession();
</script>

这样同一目录下建一个空内容的sessionKeeper.asp就文件就可以了!
分享到:
评论

相关推荐

    详解php设置session(过期、失效、有效期)

    如果无法直接修改`php.ini`,也可以通过程序逻辑来实现Session永不过期。一种方法是使用Cookie来持久化Session ID,并在每次请求时用`session_id()`函数设置: ```php session_start(); $_SESSION['count']; // ...

    weblogic设置session超时时间

    如果将其设置为 `-1`,则 Session 将永不过期,而忽略在 `weblogic.xml` 文件中设置的 `TimeoutSecs` 属性值。 Method 2: 使用 weblogic.xml 文件 在 WebLogic 中,还可以使用 `weblogic.xml` 文件来设置 Session ...

    asp之让Session永不过期

    所以想通过设session.timeout的过期时间让session永不过期是不可能的。写到Cookies里是比较好的方法,网上也有很多这样的教程,这里就不再说了!还有就是用在要保持session的页里设隐藏iframe每隔一段时间(这个...

    java设置session过期时间的实现方法

    例如,设置Session永不超时可以写成: ```java session.setMaxInactiveInterval(-1); ``` 这里的-1表示Session将不会自动过期,除非显式地调用`invalidate()`方法或者服务器重启。 **优先级顺序** 当同时...

    php中实现精确设置session过期时间的方法

    还有一种方法可以让session看起来永不过期,那就是不依赖PHP的自动清理机制,而是通过设置`session.use_cookies`为1,利用cookie来保持session ID。同时,将`session.cookie_lifetime`设置为一个较大的数值,如...

    PHP中的session永不过期的解决思路及实现方法分享

    要使session永不过期,可以将其设置为一个非常大的值,例如***秒。 3. **session.gc_maxlifetime** 这个选项定义了服务器端session数据的最大存活时间。默认值通常为1440秒(即24分钟)。同样地,为了session永不...

    SpringMVC拦截器实现监听session是否过期详解

    为了维护会话的有效性,防止未授权访问,开发者常常需要实现监听session是否过期的功能。在SpringMVC中,可以通过拦截器(Interceptor)来实现对session的监听和管理。 拦截器是SpringMVC框架中用于拦截客户端请求...

    PHP中怎样保持SESSION不过期 原理及方案介绍

    1. **增加`session.cookie_lifetime`**:将此值设置为一个较大的数字,使Cookie在较长时间内有效,但请注意,这可能导致用户在关闭浏览器后再打开时仍然保持登录状态,可能会带来安全风险。 2. **自定义SESSION管理...

    ajax实现session不过期(避免页面过期的现象)

    很多报考时候或填写志愿时候,你是否遇到多斟酌一段时间后... 当无法预计用户操作页面的时间时就用到了session永不过期 代码如下: [removed][removed] [removed] $(function () { function post() { $.ajax({ type: “p

    Java设置session超时的几种方式总结

    如果配置为负数或者0,则表示session永不过期。需要注意的是,该配置会为所有的session统一设置超时时间,任何未在指定时间内被访问的session都将被认为是无效的。 2. 在工程的web.xml中设置 除了在服务器级别设置...

    PHP Session的配置与应用

    3. 会话过期:合理设置`session.cookie_lifetime`和`session.gc_maxlifetime`,防止会话永不过期或过早失效。 4. 防止Session劫持:使用HTTPS确保通信安全,同时考虑使用Session ID重置策略来防范。 综上所述,...

    WEB开发 之 Session的使用.docx

    4. `getMaxInactiveInterval()`:获取Session的最大非活动间隔(秒),负值表示Session永不过期。 5. `getAttribute(String name)`:获取名为`name`的Session属性值。 6. `setAttribute(String name, Object value)`...

    Oracle数据库用户的密码过期时间如何修改为永不过期

    然后,我们需要修改新创建的`PROFILE`,将`PASSWORD_LIFE_TIME`参数设置为`UNLIMITED`,使得密码永不过期: ```sql ALTER PROFILE PASSWD_UNLIMIT LIMIT PASSWORD_LIFE_TIME UNLIMITED; ``` 最后,将目标用户(如`...

    weblogic学习资料书

    主要介绍weblogic管理以及在J2EE上的应用,如WebLogic如何设置...当&lt;session-timeout&gt;设置为-1,表示Session将永不过期,而忽略在 weblogic.xml中设置的TimeoutSecs属性值。 该属性值可以通过console控制台来设置

    jsp编程中session的用法实例分析.docx

    - `getMaxInactiveInterval()`:获取Session的超时时间(以秒为单位),负值表示永不过期。 - `getAttribute(String name)`:获取与给定键关联的Session属性值。 - `setAttribute(String name, Object value)`:设置...

    jsp编程中session的用法实例分析

    4. `getMaxInactiveInterval()`:返回Session的非活动时间间隔(以秒为单位),如果设置为负值,则表示Session永不过期。 5. `getAttribute(String name)`:从Session中获取指定名称的对象。 6. `setAttribute...

Global site tag (gtag.js) - Google Analytics