- 浏览: 94738 次
- 性别:
- 来自: 济南
最新评论
-
fightingIOW:
案例看了,能实现上传,但是不是异步的,怎么改成页面可以预览呢? ...
swfUpload实例 -
kizz:
您好,实例我看了,确实不错。您有struts2版的吗?现在项目 ...
swfUpload实例
先说明情况:公司做监控系统,B/S结构,主要用在局域网内部!监控系统开机可能要开好长时间,管理员的ID和权限等是写在Session里的——我想不用Cookies的原因可能是Cookies不是很安全,还有就是局域网内,只是几台机子访问服务器,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="SessionKeeper.asp"> </iframe> |
同目录下建一下SessionKeeper.asp的文件。
<html> |
这种方法还是比较长见的,另外还有一种和上面类似的方法,不过他不是用meta自动涮新嵌套的iframe的方法。他是用javascript:window.setTimeout("functionname()",10000);第隔一段时间时间自动调用一个函数的方法,当然函数里还是要去连接一个空的文件。具体方法如下:
在要保持session面里加上:
<script id=Back language=javascript></script> <script language=javascript> |
这样同一目录下建一个空内容的sessionKeeper.asp就文件就可以了!
问题没有解决:通过以上的方法Session保持应该没有问题了,IIS默认无请求的清除session的值为20分钟,我设的每次交互服务的时间都远远小于这个值,可是我大概过个一天多的时间,session还是无缘无故的没了!郁闷。
后来在网上多方查找终于找到答案:原来IIS为了保护服务器,有一个“回收”的概念!测试了半天终于有了点大体了解(不要笑我菜^-^)。先来看看这个“回收”在哪设置。
启动IIS管理器->应用程序池->右键->属性->回收选项卡,有一项是默认就起作用的,就是第一项:“回收工作进程(分钟)”默认值1740分钟,大约29个小时。他是什么意思呢?我个人理解:在session.timeout之后再过1740分钟自动把所有仍在保持的session清除。这个值最大可设为4000000,大概是2700多天!我直接取消了,不用他自动回收!问题终于解决。
另外这个属性对话框中还有其它几项:第二项应该是连接的用户超过了一定数目回收。第三项是到某一个时间就自动回收。在“性能”选项卡中“在空闲此时间段后关闭工作进程”,这里就是设置IIS默认session.timeout时间的地方了。默认值20分钟,这里同样最大值可设为4000000,和在ASP页中设置session.timeout最大值为1440不同。在这里设置超过大于1440的值是否起作用,我没作测试,我想应该是可以的。那为什么在ASP页中session.timeout的值最大只能是1440在IIS的属性中却能设的那么大呢?应该是属于一种保护机制:ASP页的session.timeout的值哪个用户都可以设,IIS里却只有管理员可以设,两者的权限不同,所以设置的范围就不同了。
<sessionState cookieless="false" timeout="480" mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;user id=sa;password=" />
<script type="text/javascript"></script>
发表评论
-
flashPaper转换swf代码 java
2011-09-08 16:12 2859// 使用flashPaper进行 ... -
自主项目安装部署(包含文档)
2011-09-08 15:21 12221. 安装Oracle 1.1运行安装Oracl ... -
oracle 循环插入数据
2011-09-05 17:53 833declarev_LoopCounter Binary_Int ... -
oracle数据库自动备份
2011-09-05 16:13 455把/opt/oraBakSH目录权限放开:chmod -R 7 ... -
后台验证struts2的上传文件大小
2011-08-05 17:06 2166/** * 返回值true表示验证文件大小通过<br/ ... -
tomcat虚拟目录配置(lunix/windows)
2011-08-03 10:50 765虚拟目录的配置: 在</host>的前面添加: ... -
myeclipse6.5 注册码生成器
2011-07-25 09:30 1093解决开发工具myEclipse6.5 注册码过期问题 ... -
本项目中使用添加收藏和设置首页
2011-07-23 14:41 746调用链接: <a href="javascr ... -
常用的网页播放器代码
2011-07-22 16:15 921常用的网页播放器代 ... -
orale不同数据库之间,表数据的转存
2011-07-21 16:27 965不同数据库之间,数据移行 目标: 在oracle数据库 ... -
解决点击页面的查询后,刷新页面,会弹出浏览器自带的对话框
2011-07-20 17:28 9201. 现象:点击页面的查询后,刷新页面,会弹出浏览器自带的对话 ... -
防刷新重复提交 action配置(防乱码) js防刷
2011-07-20 11:35 26771. 现象:在我们系统中,新增、编辑数据后,继续刷新页面后,会 ... -
swfUpload实例
2011-07-19 13:50 10311很好的实例: 官方网站: http://swfup ... -
图片轮播js及调用
2011-07-08 10:54 16921. 图片轮播所需js // JavaScript Docu ... -
设置首页和添加收藏夹
2011-07-06 09:30 951// JavaScript Document /* *Ç ... -
java导入excel表格
2011-06-18 16:31 965一个从网上下载的很好的excel操作资料! 1 从Ex ... -
枚举的使用 实例
2011-06-17 15:44 753package utils; import java.uti ... -
js 判断文件时候为空
2011-06-16 17:30 3332/** * 初始化 选择试题列表页面,判断复选框是否选中 ** ... -
struts2 下的文件下载
2011-06-16 17:28 906推荐:Struts 2中实现文件下载(修正中文问题)http: ... -
解决linux下oracle导入数据中文乱码方案
2011-05-25 09:53 1855<script type="text/ ...
相关推荐
`TestFX168Parser.java`、`FX168Parser.java`、`ParserUtil.java`、`ParserLinks.java`可能涉及到数据解析,它们可能与phpcms的数据获取和处理有关,但直接解决session过期问题的可能性较小。 总的来说,解决phpcms...
**Session过期问题的常见场景及解决方案** 1. **用户长时间未操作**:设置合理的Session超时时间,同时考虑采用心跳检测来保持用户在线状态。 2. **用户浏览器关闭**:浏览器关闭后Session丢失,再次打开时应判断...
本文将针对AJAX在Session过期问题上提供几个解决方案,并对每个方案的优缺点进行讨论。 方案1:通过检查AJAX返回内容是否包含标签 当Session过期时,服务器通常会返回登录页面的HTML代码。因此,我们可以通过AJAX...
这种方式减少了服务器的存储压力,但需要处理Token的安全和过期问题。 针对上述描述中的"jar包",可能是一个实现了Session复制或集中存储功能的库,比如`Tomcat8`本身支持的`manager`模块,或者其他第三方解决方案...
处理Session过期的问题是一个常见的挑战,尤其是当使用动态加载的控制器时。当Session过期后,由于控制器无法正常初始化,可能导致某些功能无法正常工作。这个问题的解决方案通常涉及到前后端的配合。 在后端处理...
在ASP.NET中,Session默认会在20分钟后过期。如果用户长时间无操作,再次提交请求时,可能会丢失Session中的数据。解决方法包括调整`<sessionState>`元素在Web.config中的timeout属性,以延长或缩短Session有效期;...
现在Ajax在Web项目中应用广泛,几乎可以说无处不在,这就带来另外一个问题:当Ajax请求遇到Session超时,应该怎么办? 显而易见,传统的页面跳转在此已经不适用,因为Ajax请求是XMLHTTPRequest对象发起的而不
在EXTJS中,你可能遇到的问题是,session过期后,某些功能可能不再正常工作,尤其是对于那些在session过期前未被触发的功能。 为了解决这个问题,后端需要做以下判断: 1. 检查请求头中的`accept`字段,通常Ajax...
### 针对分布式或集群Session同步问题:JWT续期解决方案 #### 一、背景介绍 随着前后端分离架构的普及和技术的发展,越来越多的应用选择使用轻量级的身份验证方法来确保数据安全。其中,JSON Web Token (JWT) 成为...
本篇将深入探讨如何在Tomcat8的集群环境中使用memcache来解决session共享的问题。 首先,让我们理解什么是session。Session是Web应用程序用来跟踪用户状态的一种机制,它存储在服务器端,通常包含了用户的登录信息...
需要注意的是,通过拦截器监听session过期的方法主要依赖于将session对象存储到application中,这可能会带来额外的内存开销,特别是在大型应用中,可能需要更加细致的处理策略。此外,如果使用了集群部署,那么...
此外,也可以参考CSDN论坛上的讨论(http://bbs.csdn.net/topics/391829648),获取更多关于解决Session和验证码问题的经验和建议。学习和掌握这些问题的解决方案,对于提升Web应用的安全性和用户体验至关重要。
总之,理解并解决Session丢失问题对于提供稳定、流畅的用户体验至关重要。开发人员应深入理解Session的工作原理,根据实际需求选择合适的Session管理策略,并时刻关注可能出现的问题,以便及时调整和优化。同时,...
可以使用粘性会话或配置共享Session存储来解决这个问题。 6. **性能考虑**:过多的Session数据会消耗服务器资源,应尽量减少对Session的依赖,或优化Session的使用,例如只存储必要的数据,及时清理不再使用的...
要解决“asp的session变量过一段时间就会过期”的问题,我们可以采取以下几种策略来保持Session变量不过期: 1. **修改Session超时时间**:在ASP的Global.asa文件中,可以设置Session对象的Timeout属性,来延长...
这个问题可能是由于多种原因引起的,包括但不限于:服务器配置问题、session过期、session存储机制故障或者是代码逻辑错误。下面我们将深入探讨这个主题,并提供可能的解决方案。 首先,我们要理解什么是session。...