搜档网
当前位置:搜档网 › 浏览器关闭使session失效的问题多种解决方式

浏览器关闭使session失效的问题多种解决方式

浏览器关闭使session失效的问题多种解决方式

浏览器关闭使session失效的问题多种解决方式

如果用户不点击网站的“退出”链接,而直接关闭浏览器(或者强制关闭浏览器进程、死机等),服务器无法处理用户退出网站的请求,解决方式如下:方式1:在每个页面中加入隐藏的IFrame,以异步刷新的方式定期刷新iframe页面,如每隔10S刷新一次,当服务器在一定的时间内未收到用户的刷新请求,则认为用户已经退出

优点:能在短时间内判断出用户是否已经退出缺点:增加用户请求次数,所消耗的服务器资源较大方式2:使用cookie保存用户登录信息,不要设置cookie的过期时间,当关闭浏览器时,cookie会自动过期

优点:处理方便缺点:用户浏览器不一定支持cookie,也就无法实现该方式方式3:在页面中添加onunload事件,当关闭浏览器时,自动跳转到“退出”页面(loginout.action)优点:退出时,能及时进行处理缺点:当用户打开多个页面时,关闭任何一个页面都有可能导致用户的退出方式4:记录用户的每次操作时间(包括页面刷新、提交表单等),在数据库中用作业每隔一段时间检查上次的操作时间,当操作时间大于一定的数值时,就认为该用户已经退出

优点:无论哪种非正常退出,都能够进行处理缺点:进行检查的时间间隔不容易确定,如果用户在线,当长时间未操

作,也会认为用户已经退出方式5:等待session失效

优点:你可以不用做任何工作缺点:用户可以在你等待的这段时间内重新登录。

asp中设置session过期时间方法总结

asp中默认session过期时间为20分钟,很多情况下不够,今天有客户要求很多就要重新登录了,所以准备了这篇文章,方便需要的朋友。 如果程序中没有设置session的过期时间,那么session过期时间就会按照IIS设置的过期时间来执行,IIS中session默认过期时间为20分钟,IIS中session时间可以更改时间设置要放在前面 例如 Session.Timeout=30 'SEESION有效时间为30分钟 Session("ID")=Rs("id") Session("Name")=Rs("Name") Session("Pass")=Rs("Pass" 利用Session.Timeout 属性设置超时时限 对于一个登录到ASP 应用程序的用户,如果用户在系统默认的时间内未进行其它任何操作,当设置的时间一到便自动撤销这个用户的Session,这样就可以防止系统的资源被浪费。Session 对象的TimeOut 属性可以用来设置“过期时间”,已分钟为单位,其设置格式为: 代码如下: Session.TimeOut=MaxTime 实例代码:(5.asp)页面,本实例说明如何控制会话的结束。 代码如下: <%@ language="vbscript" %> <% session.timeout=60 %> 控制会话的结束时间 <% who = Session.SessionID CurrentPage=Request.ServerVariables("SCRIPT_NAME") Response.AppendTolog who & ":" & CurrentPage Response.write "

你的会话标识为:" & who & "" Response.write "你当前访问的页面路径为:" & CurrentPage & "" if Session("I")="" then session("i")=1 else session("i")=session("i")+1 end if

Session对象失效的客户端解决方法

Session对象失效的客户端解决方法 魏莹李锋冯珊 问题的提出 ASP(Active Server Pages)技术的Session对象用于存储用户在对话期间的私有信息。当前用户的Session对象中定义的变量和对象能在页面之间共享,但是不能为应用中其他用户所访问,因此在用ASP开发网络应用程序时,可以利用Session对象保存和跟踪用户的状态信息。 Session对象有一个十分重要的属性:Timeout,它用于设置在会话资源被释放前,会话对象所能保持非活动状态的时间(默认值为20分钟)。当Timeout属性设置的时间值耗尽后,会话资源将被释放。通过Timeout属性破坏Session对象,避免了Session对象在服务器中无限制地产生,保护了服务器资源。但是,在实际网络开发中,常常遇到由于Session对象失效,用户状态信息丢失而导致应用流程无法正常完成的问题。 虽然利用Timeout属性释放资源的策略是出于保护服务器的目的,但是Session对象不可预知的失效性,却成为开发应用程序的一个弊病。因而在实际应用程序的开发中,必须解决Session对象失效的问题。 传统的解决方法 现有的解决方法都是采用服务器端方法解决Session对象失效问题。典型的处理方法分为两大类:失效前的处理和失效后的处理。 失效前的处理是指在Session对象尚未失效之前,对变量进行转存等处理,做到防患于未然。典型的解决方法是在应用程序中设定一个定时器,在Session对象失效前5分钟触发定时器,然后重新设置Session对象的各个变量和对象。由于必须在服务器端实时维护该定时器,并且必须保证该段程序在整个会话过程中处于激活状态,所以采用这种方法增加了服务器的额外负载。 失效后的处理是指在Session对象失效后,立即提示用户进行处理。典型的解决方法是在Session对象失效后,在服务器端保存断点,并提示用户重新登录,继续完成工作。这种方法实现简单,但是往往因为断点的不可完全自动恢复性,以及重新登录过程的复杂性,而受到最终用户的抱怨和指责。 针对以上两类解决方案的缺陷,笔者在编程实践中结合Cookie对象的特性,采用Session 对象与Cookie对象在客户端联合存取会话级变量的方法,既避免了对服务器资源的额外需求,又解决了断点不可自动恢复的问题,而且还免去了重新登录的麻烦。 新的解决方法 Cookie对象是用来存储有关当前用户数据的小信息包,它可以在浏览器和Web服务器之间传递。在Web应用中,Cookie提供了一种用于跟踪、记录每个用户位置的机制。Cookie 最常见的用处之一,就是保存一个Web应用中最后一次被访问的网络页面的时间以及日期或被访问的网址。 通常,Cookie对象在客户端Windows系统目录下Cookies子目录中以文件形式存储。存储在Cookie对象中的信息数据能够被保存较长时间,所以,可以将会话级变量备份在Cookie 对象中,在Session对象失效后,通过检索并利用Cookie对象中的信息来自动恢复断点。Cookie对象具有如下几个属性: ●Expires:设定Cookie对象到期的日期; ●Domain:将Cookie对象的传送确定为仅由Domain属性确定的成员; ●Path:确定Cookie对象传送路径;

Java基础-关于session的详细解释

Java基础-关于session的详细解释 session, Java, 基础, 解释 一、术语session 在我的经验里,session这个词被滥用的程度大概仅次于transaction,更加有趣的是transaction与session在某些语境下的 含义是相同的。 session,中文经常翻译为会话,其本来的含义是指有始有终的一系列动作/消息,比如打电话时从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一个session。有时候我们可以看到这样的话“在一个浏览器会话期间,...”,这里的会话一词用的就是其本义,是指从一个浏览器窗口打开到关闭这个期间①。最混乱的是“用户(客户端)在一次会话期间”这样一句话,它可能指用户的一系列动作(一般情况下是同某个具体目的相关的一系列动作,比如从登录到选购商品到结账登出这样一个网上购物的过程,有时候也被称为一个transaction),然而有时候也可能仅仅是指一次连接,也有可能是指含义①,其中的差 别只能靠上下文来推断②。 然而当session一词与网络协议相关联时,它又往往隐含了“面向连接”和/或“保持状态”这样两个含义,“面向连接”指的是在通信双方在通信之前要先建立一个通信的渠道,比如打电话,直到对方接了

电话通信才能开始,与此相对的是写信,在你把信发出去的时候你并不能确认对方的地址是否正确,通信渠道不一定能建立,但对发信人来说,通信已经开始了。“保持状态”则是指通信的一方能够把一系列的消息关联起来,使得消息之间可以互相依赖,比如一个服务员能够认出再次光临的老顾客并且记得上次这个顾客还欠店里一块钱。这一类的例子有“一个TCP s ession”或者“一个POP3 session”③。 而到了web服务器蓬勃发展的时代,session在web开发语境下的语义又有了新的扩展,它的含义是指一类用来在客户端与服务器之间保持状态的解决方案④。有时候session也用来指这种解决方案的存储结构,如“把xxx保存在session里”⑤。由于各种用于web开发的语言在一定程度上都提供了对这种解决方案的支持,所以在某种特定语言的语境下,session也被用来指代该语言的解决方案,比如经常把Java 里提供的javax.servlet.http.HttpSession简称为session⑥。 鉴于这种混乱已不可改变,本文中session一词的运用也会根据上下文有不同的含义,请大家注意分辨。 在本文中,使用中文“浏览器会话期间”来表达含义①,使用“session机制”来表达含义④,使用“session”表达含义⑤,使用 具体的“HttpSession”来表达含义⑥

怎样修复IE浏览器

1.清理多余的插件 ①安装太多的插件,将直接导致 Internet Explorer(IE)运行效率降低。 特别有些病毒、木马、恶意软件等更是喜欢利用IE插件来做文章。 ②建议使用《360安全卫士》、《瑞星卡卡安全助手》、《金山卫士》等 软件进行查杀、清理、修复。注意:不要只局限使用一款软件,多用几款或许有一款正好适合您。当然最好是在安全模式下进行。这样一般就可以解决病毒问题。 2.超链接无任何反应,IE无法打开,修复受损的IE模块 ①有时候IE无法打开或者IE无法打开新窗口了,表现为:在浏览网页过 程中,单击超链接无任何反应。问题的原因在于IE新窗口模块被损坏所致,解决的方法是单击“开始”-“运行”,依次运行: regsvr32 actxprxy.dll regsvr32 shdocvw.dll ②将上述两个DLL文件注册,然后重启系统。如果还不行,则需要继续执 行: regsvr32 mshtml.dll regsvr32 urlmon.dll regsvr32 msjava.dll regsvr32 browseui.dll regsvr32 oleaut32.dll regsvr32 shell32.dll 3.清理使用痕迹 ①方法1,软件。下载并安装《360安全卫士》或者《金山卫士》等软件, 然后使用其“清理使用痕迹”功能进行清理。 ②方法2,手工。“开始-运行”,输入 regedit,回车。 在弹出的注册表编辑窗口,单击左边的“我的电脑”,然后按键盘上的“F3”键。输入浏览记录里面的一条(注意文字要完全一致),然后点击“查找”。 找到后,对其点右键,选择“删除”。估计同类的记录都在一起,一并删除之。 然后继续按“F3”,直到找不到为止。 4.清除IE缓存 ①打开IE,在“工具”菜单上,单击“Internet 选项”。 ②在弹出窗口中,单击“常规”选项卡,在“Internet临时文件”下。 单击“删除文件”。 ③然后在弹出窗口中,钩选“删除所有脱机文件”。单击“确定”。 ④单击“删除Cookies”。单击“确定”。 ⑤在“历史记录”下,单击“清除历史记录”,然后单击“是”。单击“确 定”。

快速修复浏览器方案

快速修复浏览器方案 (鉴于系统环境不同→请活学活用以下方法→根据具体情况决定做哪些→并非都做到) 1、打开浏览器,点“工具”→“管理加载项”那里禁用所有可疑插件,或者你能准确知道没问题的保留。然后→工具→INTERNET选项→常规页面→删除cookies→删除文件→钩选删除所有脱机内容→确定→设置使用的磁盘空间为:8MB或以下(我自己使用1MB)→确定→清除历史纪录→网页保存在历史记录中的天数:3以下→应用确定(我自己使用的设置是0天)。 2、还原浏览器高级设置默认值:工具→INTERNET选项→高级→还原默认设置。 3、恢复默认浏览器的方法“工具”→Internet选项→程序→最下面有个“检查Internet Explorer是否为默认的浏览器”把前面的钩选上,确定。 4、设置主页:“工具”→Internet选项→常规→可以更改主页地址→键入你喜欢的常用网址→应用。 5、如果浏览器中毒就使用卡卡助手4.0版本修复,然后做插件免疫:全部钩选→免疫。然后→全部去掉钩选→找到“必备”一项,把能用到的插件重新钩选→取消免疫。能用到的就是FLASH和几种播放器的,其余的不要取消免疫。完成所有操作以后,你的浏览器就不会出问题了。 6、运行→regedit→进入注册表, 在→ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer \ShellExecuteHooks 这个位置有一个正常的键值{AEB6717E-7E19-11d0-97EE-00C04FD91972}, 将其他的删除(默认项也保留无法删除)。 7、检查你的浏览器是否被某种(游戏或其它)安装程序恶意附加了某种插件→卸载清理掉它。 8、HOSTS文件被修改常常会导致类似问题:文件位置 C:\WINDOWS\system32\drivers\etc 把hosts用记事本打开,内容清空,只保留127.0.0.1 localhost 这一个条目关闭保存。 9、(情况较严重,上面方法不能解决时使用)开始→运行→CMD→窗口内粘贴如下命令:

session过期时间设置word精品文档10页

在一般系统登录后,都会设置一个当前session失效的时间,以确保在用户没有使用系统一定时间后,自动退出登录,销毁session。 具体设置很简单: 在主页面或者公共页面中加入: session.setMaxInactiveInterval(900); 参数900单位是秒,即在没有活动15分钟后,session将失效。 这里要注意这个session设置的时间是根据服务器来计算的,而不是客户端。所以如果是在调试程序,应该是修改服务器端时间来测试,而不是客户端。 在一般系统中,也可能需要在session失效后做一些操作, (1)控制用户数,当session失效后,系统的用户数减少一个等,控制用户数在一定范围内,确保系统的性能。 (2)控制一个用户多次登录,当session有效时,如果相同用户登录,就提示已经登录了,当session失效后,就可以不用提示,直接登录了 那么如何在session失效后,进行一系列的操作呢? 这里就需要用到监听器了,即当session因为各种原因失效后,监听器就可以监听到,然后执行监听器中定义好的程序,就可以了。 监听器类为:HttpSessionListener类,有sessionCreated和sessionDestroyed两个方法

自己可以继承这个类,然后分别实现。 sessionCreated指在session创建时执行的方法 sessionDestroyed指在session失效时执行的方法 给一个简单的例子: public class SessionListener implements HttpSessionListener{ public void sessionCreated(HttpSessionEvent event) { HttpSession ses = event.getSession(); String id=ses.getId()+ses.getCreationTime(); https://www.sodocs.net/doc/e716637951.html,erMap.put(id, Boolean.TRUE); //添加用户 } public void sessionDestroyed(HttpSessionEvent event) { HttpSession ses = event.getSession(); String id=ses.getId()+ses.getCreationTime(); synchronized (this) { https://www.sodocs.net/doc/e716637951.html,ERNUM--; //用户数减一 https://www.sodocs.net/doc/e716637951.html,erMap.remove(id); //从用户组中移除掉,用户组为一个map } }

顽固图标删除的几种方法,修复IE的几种方法

顽固图标删除的几种方法 首先在桌面上右击,依次点击排列图标,运行桌面清理向导,下一步,勾选“高清电影/、精彩小游戏/、淘宝商城/”这三个需要删除的图标,点下一步,完成。(注:这样做的目的是要查看这三个文件的真实文件名)然后在桌面上会出现一个“未使用的桌面快捷方式”文件夹,打开这个文件夹,里面就会出现“高清电影/、精彩小游戏/、淘宝商城/”的真实文件名,如:高清电影.{0EF8F6B1-E0CC-415E-AF65-73C875C33B40},淘宝商城.{0F14A9C3-20E4-4B21-8E54-18B2C4D59CB0}。此时,点开始/运行,输入regedit 回车,进入注册表编辑器,依次展开:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft \Windows\CurrentVersion\Explorer\Desktop\NameSpace在NameSpace分支下可以找到“未使用的桌面快捷方式”中三个文件的名称,如{0EF8F6B1-E0CC-415E-AF65-73C875C 33B40}(这个就是高清电影),{0F14A9C3-20E4-4B21-8E54-18B2C4D59CB0}(这个就是淘宝商城),但是在注册表中右击这些文件名时,无法直接删除,需要更改操作权限才行,操作如下:在注册表中,右击这些文件名,点权限,选择"组或用户名称"中的everyo ne 添加完全控制权限,点应用,确定,退出对话框,然后现在注册表中就可以删除这些文件名了,删除之后,在桌面上刷新高清电影/、精彩小游戏/、淘宝商城/”这三个图标是否不见了?大功告成! 还有一种是一个IE带四个文件"高清电影"\精彩小游戏\淘宝商城\XX美图\桌面一下多出五个图标,任务栏里也有这五个图标,就边收藏夹里,一下子也多出好多网址,确实头疼。桌面图标IE删都删不掉,其它四个还可以删掉,但机器重启它又出现了。按上面的方法也删不掉。在打开“末使用桌面快捷方式”文件,在其中一个图标上右击,点“属性”有这样一串地址:%progamFiles%....,在系统盘里,怎么也找不到这个文件。只好另辟途径:双击“我的电脑”,点“C盘”,点“搜索”,在“包含文字”里输入“% progamFiles%...”,点“搜索选项”,在“高级选项”、“搜索系统文件夹”、“搜索隐藏文件夹”前打钩,点“立即搜索”。这时候搜索出一个"S22"的文件来,将它删除,搞定。 修复IE的几种方法 这样的情况我也遇到过,很头疼,搞了很久搞定了,方法是:打开IE,点"工具",点"internet选项",点"常规",在"若要创建主页选项卡,请在各地址行键入地址"内,输入你想要打开的网址,如"https://www.sodocs.net/doc/e716637951.html,/点"确定".再关闭IE,回到桌面,在IE图标上右击,点"web文档",在URL(U)内,把原来的网址删掉,输入(与前面的一致)你想要打开的网址,如https://www.sodocs.net/doc/e716637951.html,/,点"确定".应该OK.祝你好运

IE被恶意篡改修复方法模板

很长请看完才能完美解决(也可以用金山急救箱解决https://www.sodocs.net/doc/e716637951.html,/jjx.shtml) 桌面上ie图标删不掉右键只有打开主页属性创建快捷方式三个选项终于删掉了,以下是粘贴一网友的方法,我就是用这方法成功删除的: 右击桌面--属性--桌面--自定义桌面--右下角“现在清理桌面”--下一步--可以看到这个图标--选中它再下一步。就可以删除桌面上两个图标了。 快速启动栏上有一个IE图标,将其拖至桌面,用上述方法删除IE图标。 再到C盘C:\Program Files\Internet Explorer,将iexplore.exe图标发送至桌面。并且在Internet 选项中“选用空白页”或者其他搜索引擎。 至此,桌面上多余的IE图标删除了,篡改的IE主页修复了 教你去除桌面上的假IE图标(对于开机自动在桌面上添加1-2个恶意ie图标并且修改注册表也不行的问题特有效) 方法一:用360--高级--系统全面诊断--扫描完后-勾选隐藏安全项---然后看到了吧---把ie相关(或全部)不正常的勾选----修复---重启--恶意修改的首页就可以更改正常了---对于开机自动在桌面上添加1-2个恶意ie图标并且修改注册表也不行的问题特有效 有时候下载东西安装之后,发现错了就把它卸载了!或者在没有卸载的时候,IE主页被恶意修改了!被恶意改成这个导航网站,然后我们一般会把主页改回来.但怎么也恢复不了!用了很多专业修复的也没用!比如:黄山.360……等!点击右键也没有删除的选项。怎么办!!!???我来教你,保证去除! 开始——运行——输入——regedit——查找注册表[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Deskto p\NameSpace\图中4个保留,多余的删掉,然后刷新桌面,假IE就没有了。 这个图是正常情况。 找到除这四项: {1f4de370-d627-11d1-ba4f-00a0c91eedba} 计算机 {450D8FBA-AD25-11D0-98A8-0800361B1103} 我的文档 {645FF040-5081-101B-9F08-00AA002F954 回收站|两个只有是一个是 {5ef4af3a-f726-11d0-b8a2-00c04fc309a4} /回收站(满) |两个只有是一个是 {e17d4fc0-5564-11d1-83f2-00a0c90dc849} 搜索结果 的另一项(这个就是生成桌面无法删除的IE图标的注册表)删除,注意记住名字! 然后我们来到注册表的这里: HKEY_CLASSES_ROOT\CLSID\ 若仍然不消失,可参照方法2.(我的就仍然存在) 方法二: 可通过注册表的路径将其删除 开始-运行-regedit 进入该路径 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop \NameSpace 然后逐个点选其下各项, 看哪“项”的“数据”显示为“Internet Explorer”,就是在右边框框里面的“数据”选项 找到后记下该项名称并直接删除该项(文件夹),刷新桌面后该“病毒IE图标”清除

Win 7 IE浏览器修复

在很多时候,用户使用IE上网时,IE浏览器会出现短暂性的假死,如果严重一点的话,只能强制关闭IE浏览器。对于经常计算机裸奔的用户,很可能IE浏览器就受到了有害木马程序的劫持。目前甚至在Windows 7系统中也不会例外。 为了解决这些有害程序的侵入而导致的IE浏览器的故障,我们总结了两个长驱直入的方法,能直捣黄龙将有害侵害剿灭。 处理方式一:如果您的系统是Windows vista\Windows 7 修复方法 先Windows 7功能键win+r,打开运行程序,并输入:regedit 运行regedit 找到: 计算机\HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\currentversion\Explorer\Fil eExts\.lnk

regedit 你会发现有openwithlist 和openwithprogids 两项,如果有其他的选项将其删除(如上图所示) 再将openwithlist内的除默认以外的所有键值都删除。将openwithprogids内的除默认和lnkfile以外的所有键值都删除。保存退出即可。 处理方式二:打开注册表,找到HKEY_USERS\S-1-5-21-3018251054-2002470566-3220277462-1000\Software\Microsoft\Wind ows\CurrentV ersion\Explorer\FileExts\.lnk\UserChoice

新建项 右侧的Progid键值Applications\\notepad.exe正是记事本,右键将其删除却提示错误不能删除,于是只得将UserChoice这项删除,再右键点击 HKEY_USERS\S-1-5-21-3018251054-2002470566-3220277462-1000\Software\Microsoft\Wind ows\CurrentV ersion\Explorer\FileExts\.lnk

session应用详解

Session 对象 可以使用Session 对象存储特定用户会话所需的信息。这样,当用户在应用程序的Web 页之间跳转时,存储在Session 对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。 当用户请求来自应用程序的Web 页时,如果该用户还没有会话,则Web 服务器将自动创建一个Session 对象。当会话过期或被放弃后,服务器将终止该会话。 Session 对象最常见的一个用法就是存储用户的首选项。例如,如果用户指明不喜欢查看图形,就可以将该信息存储在Session 对象中。有关使用Session 对象的详细信息,请参阅“ASP 应用程序”部分的“管理会话”。 注意会话状态仅在支持cookie 的浏览器中保留。 语法 Session.collection|property|method 集合 Contents 包含已用脚本命令添加到会话中的项目。 StaticObjects 包含通过 标记创建的并给定了会话作用域的对象。 属性 CodePage 将用于符号映射的代码页。 LCID 现场标识。 SessionID 返回用户的会话验证。 Timeout 应用程序会话状态的超时时限,以分钟为单位。 方法 Abandon 该方法破坏Session 对象并释放其资源。 事件 global.asa 文件中声明下列事件的脚本。 Session_OnEnd Session_OnStart 有关以上事件及global.asa 文件的详细信息, 请参阅Global.asa 参考. 注释 您可以在Session 对象中存储值。存储在Session 对象中的信息在会话及会话作用域内有效。下列脚本演示两种类型的变量的存储方式。 <%

判断session是否过期

前一段时间有好几个问题,提到怎么判断session是否过期。 接触jsp已经很久了,但是还真没有想过这个问题,当时也就没有找到一个满意的答案给人家。 当时,我提到一个方法,就是实现HttpSessionListener接口,然后在sessionDestroyed()方法中执行一些操作,表示session要过期了,因为这个方法是session.invalidate()之前监听器调用的方法。这个判断的方法显然不能让人满意。 我当时问了些人,但是也没有得到一个准确的答案。 正好偶然间看到,request.getSeesion(boolean)方法,一下子让我恍然大悟。这个方法里面传了一个boo lean值,这个值如果是true,那么如果当前的request的session不可用,那么就创建新的会话,如果存在就返回当前的会话。如果参数是false,那么在request的当前会话不存在的时候就返回null。 这样我们就可以很容易的联想到这个所谓的request的当前会话是否存在和session过期的联系,所以我们就可以“近似地”认为session不存在就是session过期了,那么我们就可以很容易地判断session是否过期了。方法如下: if(request.getSession(false)==null) System.out.println("Session has been invalidated!"); else System.out.println("Session is active!"); 可能大家注意到我上面有一个“近似地”字眼,也就是说存在特别情况。 这个特殊情况就是第一次请求还没有创建会话的时候,那么用这个方法返回的仍然是null,原因我想大家应该是显然的。 以上是个人拙见,希望大家指正。 if(request.getSession(false)==null){ sessin = request.getSession(true); } 俺师傅一年前就用了,不过他去大公司了555555555555555 俺也没看明白,今看老兄一贴,茅塞顿开 真实“看一贴长一智谢谢啊” private boolean checkSession(HttpServletRequest request, HttpServletResponse response) { HttpSession session = request.getSession(false); String requestURI = request.getRequestURI(); String contextPath = request.getContextPath(); requestURI = requestURI.substring(contextPath.length());

session超时重新登录

1.首先在web.xml中配置过滤器: SessionFilter https://www.sodocs.net/doc/e716637951.html,mon.web.SessionFilter SessionFilter *.sino SessionFilter *.jsp 2.SessionFilter.java文件 package https://www.sodocs.net/doc/e716637951.html,mon.web; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.sinosoft.platform.system.model.SysUser; import com.sinosoft.platform.system.util.SystemUtil; import https://www.sodocs.net/doc/e716637951.html,mon.ClientConfig; public class SessionFilter implements Filter { private FilterConfig fc = null; public void destroy() { }

IE浏览器防护和修复全攻略

IE浏览器防护和修复全攻略 2008-06-11 16:35 互联网上陷阱越来越多,一不小心您就可能深陷其中,作为最流行的浏览器软件,IE也成为互联网陷阱做手脚的一部分。 一些恶意网站、免费或者共享软件、垃圾邮件为了宣传自己或者其他目的,以诱人图片或点击后有奖为诱饵,欺骗用户点击网页上隐藏的恶意程序,从而修改你的注册表,把你的IE篡改得面目全非。 它们经常强行篡改你的IE首页、标题栏等内容,或者将它们的链接强行添加到历史浏览记录中而且无法删除,甚至使相关按钮变灰,使你无法修复。目前这种恶意篡改IE之风愈演愈烈,轻则 逼迫用户访问他们不想访问的网站,重则在系统中驻留木马等恶意程序,造成系统运行缓慢,其危害程度已超过一般的病毒和黑客行为。本专题将搜集整理系列技巧,帮助用户更好对IE进行防护,并免被恶意篡改,同时也提供了系列IE 被IE篡改后的恢复工具和技巧,帮助用户拥有一个健康、清洁的IE。 一、禁止通过IE修改你的注册表 恶意网页可以利用JavaScript脚本语言来修改你的注册表设置,因此只要你在IE中禁用了JavaScript,即可防止你的注册表被修改,但这样做会影响你浏览某些网站,所以建议你在IE的设置中将脚本设为“提示”,在IE中单击“工具/Internet选项/安全”,选中“Internet”,点击“自定义级别”,在弹出的窗口中选择“安全级-高”,将脚本都设为“提示”。 如果你的系统是Windows XP/2000,你可以单击“开始/设置/控制面板/管理工具/服务”,禁用Remote Registry Service服务,这样即可禁止通过IE 修改你的注册表;另外,你也可以使用Norton AntiVirus杀毒软件来禁止通过

Java中设置session的详细解释

Java中设置session的详细解释 一、术语session 在我的经验里,session这个词被滥用的程度大概仅次于transaction,更加有趣的是transaction和session在某些语境下的含义是相同的。 session,中文经常翻译为会话,其本来的含义是指有始有终的一系列动作/消息,比如打电话时从拿起电话拨号到挂断电话这中间的一系列过程能称之为一个session。有时候我们能看到这样的话“在一个浏览器会话期间,...”,这里的会话一词用的就是其本义,是指从一个浏览器窗口打开到关闭这个期间①。最混乱的是“用户(客户端)在一次会话期间”这样一句话,他可能指用户的一系列动作(一般情况下是同某个具体目的相关的一系列动作,比如从登录到选购商品到结账登出这样一个网上购物的过程,有时候也被称为一个transaction),然而有时候也可能仅仅是指一次连接,也有可能是指含义①,其中的差别只能靠上下文来推断②。 然而当session一词和网络协议相关联时,他又往往隐含了“面向连接”和/或“保持状态”这样两个含义,“面向连接”指的是在通信双方在通信之前要先建立一个通信的渠道,比如打电话,直到对方接了电话通信才能开始,和此相对的是写信,在你把信发出去的时候你并不能确认对方的地址是否正确,通信渠道不一定能建立,但对发信人来说,通信已开始了。“保持状态”则是指通信的一方能够把一系列的消息关联起来,使得消息之间能互相依赖,比如一个服务员能够认出再次光临的老顾客并且记得上次这个顾客还欠店里一块钱。这一类的例子有“一个TCP session”或“一个POP3 session”③。 而到了web服务器蓬勃发展的时代,session在web研发语境下的语义又有了新的扩展,他的含义是指一类用来在客户端和服务器之间保持状态的解决方案④。有时候session也用来指这种解决方案的存储结构,如“把xxx保存在session里”⑤。由于各种用于web研发的语言在一定程度上都提供了对这种解决方案的支持,所以在某种特定语言的语境下,session 也被用来指代该语言的解决方案,比如经常把Java里提供的javax.servlet.http.HttpSession简称为session⑥。 鉴于这种混乱已不可改动,本文中session一词的运用也会根据上下文有不同的含义,请大家注意分辨。 在本文中,使用中文“浏览器会话期间”来表达含义①,使用“session机制”来表达含义④,使用“session”表达含义⑤,使用具体的“HttpSession”来表达含义⑥ 二、HTTP协议和状态保持 HTTP协议本身是无状态的,这和HTTP协议本来的目的是相符的,客户端只需要简单的向服务器请求下载某些文件,无论是客户端还是服务器都没有必要纪录彼此过去的行为,每一次请求之间都是独立的,好比一个顾客和一个自动售货机或一个普通的(非会员制)大卖场之间的关系相同。

session过期时间设置说明

session过期时间设置说明 一.系统session配置说明 针对承保(prpall)、双核(undwrt)系统中,有两个配置文件可以设置session的过期时间 分别是web.xml和weblogic.xml Web.xml中配置 60 时间单位是一分钟,并且只能是整数,如果是零或负数,那么会话就永远不会超时。 此例表示Session将在60分钟后过期 weblogic.xml中设置的TimeoutSecs属性值。 Weblogic.xml中配置 TimeoutSecs 1800 时间单位是一秒钟,表示1800秒后失效。 1.如果两个配置文件中都有配置,且Weblogic.xml中配置的秒数必须可以被60整除,(如60,120等)。则按照时间最小的那个为准。 2.如果两个配置文件中都有配置,且Weblogic.xml中配置的秒数必须不可以被60整除(如,45,90等)。则以web.xml设置的时间为准。 3.如果web.xml文件中没有设置,且Weblogic.xml中有配置。则按照Weblogic.xml 的设置为准。 4.为保证session的唯一性,在weblogic环境下,建议只在weblogic.xml中设置。防止出现冲突。

二.疑问 1.web.xml,weblogic.xml同时配置时,为什么会是以时间小的为准? 暂时无解。 2.对应的weblogic.xml 必须配置为分钟的整数倍? 如web=2m weblogic=90s,最终为以web为准。 web=3m weblogic=120s 以 weblogic为准 暂时无解。 3.关于“WEB-INF/config/appconfig/SysConstConfig.xml”中的session时效时间。 从目前情况看, SysConstConfig.xml 这个应该没有使用;那么就是 web.xml 与 weblogic.xml 这两个的配置用谁的问题了。 按网上说法,对应的优先级应该是:自定义xml配置的session>web.xml>weblogic.xml; 个人理解为:自定义的配置最高的原因是因为,我们程序实现判断session时去读取了这个时间;对于web.xml>weblogic.xml,从上述的测试过程中发现并不是如此。 三.配置session方式 WebLogic如何设置session超时时间 1 web.xml 设置WEB应用程序描述符web.xml里的元素。这个值以分钟为 单位,并覆盖weblogic.xml中的TimeoutSecs属性 54 此例表示Session将在54分钟后过期 当设置为-2,表示将使用在weblogic.xml中设置的 TimeoutSecs这个属性值。 当设置为-1,表示Session将永不过期,而忽略在 weblogic.xml中设置的TimeoutSecs属性值。 该属性值可以通过console控制台来设置 2 weblogic.xml 设置WebLogic特有部署描述符weblogic.xml的元素的 TimeoutSecs属性。这个值以秒为单位 TimeoutSecs 3600

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

设置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?Rand Str="+Math.random();

IE8浏览器怎么修复

?IE8浏览器怎么修复 ?i e8浏览器出来有一段时间了,但是对于大多数使用者来说,这款微软号称速度最快的浏览器产品并不实用,并且在使用的过程中很容易出现这样 那样的故障。i e8浏览器漏洞不断,微软的补丁也不断,i e8浏览器出错的 几率很高,不过通过一番设置是可以修复的,笔者就给大家介绍一下i e8 浏览器的故障修复。 i e8浏览器进程关闭延迟 在w i n d o w s xp中使用i e8在一个窗口中浏览网页却在任务管理器中发现多个 i e xp l o r e.e xe的进程,而且关闭选项卡后并不会自动关闭该进程,这就导致了该 进程顽固占用系统资源的故障。这其实不能算是故障,而是i e8的新特性。i e8 设计了一个备份i e xp l o r e.e xe的进程,浏览的选项卡崩溃不会导致其他选项卡崩 溃退出,而是可以继续正常浏览。 对于系统资源紧张的用户,可以通过注册表设置来自动关闭释放的进程。点击“开始”菜单,打开“运行”窗口,输入“r e ge d i t”,在打开的注册表编辑器依次打开 h k e y_c u r r e n t_u s e r\s o ft w a r e\m i c r o s o f t\i n t e r n et e xp l o r e r\m a i n子项,在右侧右键单 击新建一个d w o r d值的子键,并将该键值设置为0,表示关闭i e8的标签和窗口 后立即关闭进程。 论坛中无法上传图片 在w i n d o w s xp中使用i e8登录论坛发帖子时出现了无法上传图片附件的故障,系 统提示“无效的图片文件”。这有可能是i e8的安全设置和一些论坛不兼容造成的。还有一个可能是i e8直接另存的图片是没有扩展名的,就会导致图片格式无法被 论坛识别而无法上传。大家在保存网页图片时注意手动给图片指定保存的扩展名,如j p g、gi f等。 首先,每个论坛可能对图片有一定的大小、尺寸、格式的限制,比如:800×640 像素以下、j p g和gi f格式、文件不大于200k b。如果图片都满足以上条件后仍不 能上传,那么就要检查i e8的安全设置了。我们可以点击“工具→i nt e r n e t选项”命令,在打开的“i n t e r n e t选项”窗口进入“安全”选项卡,点击“自定义级别”按钮,在 打开的“安全设置”窗口将“其他”下的“将文件上载到服务器时包含本地目录路径” 设置为“启用”,确定重启i e8,这个故障应该就解决了。 论坛无法保存c o o k i e