关于session超时、网址里有未知字符的问题

 

   session本来是个不稳定的东西,经常会被丢失,本来用cookie不错,但又不想对程序做改动。查了查资料,找到了下面一段:

      由于Asp.net程序是默认配置,所以Web.Config文件中关于Session的设定 默认的是下面这个:运行后后面会自动加一串字符 ,不好看,

如下:

在<system.web></system.web>节点中修改或添加配置,有的已经存在,有的还没有存在。

<sessionState mode ="InProc" cookieless ="true" timeout ="20"></sessionState>

 

改一下cookieless 就行了。

<sessionState mode ="InProc" cookieless ="false" timeout ="20"></sessionState>

想让session不容易丢失,设置的session配置如下(电脑上开启asp.net state 服务):

<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data   source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="20"/>

或者只用 StateServer:  <sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424"  timeout="40"/>

我们会发现sessionState标签中有个属性mode,它可以有3种取值:InProc、StateServer、SQLServer(大小写敏感)。默认情况下是InProc,也就是将Session保存在进程内(IIS5是aspnet_wp.exe,而IIS6是W3wp.exe),这个进程不稳定,在某些事件发生时,进程会重起,所以造成了存储在该进程内的Session丢失。

附:

如果要存储在session里的不是一个简单的类型,那么需要在类上面加 [Serializable]  标识为可序列化,不然会报不可自动序列化的错误。

时间: 2024-12-22 10:59:39

关于session超时、网址里有未知字符的问题的相关文章

Session超时的问题,能不能在程序某个地方统一编码进行返回登录页面的操作处理呢??

问题描述 刚学编程没多久,写个系统登录后记录了相关的Session信息.之后在很多页面都用到了Session保存的信息.一旦Session超时后,这些页面就都会报错..有没有什么方法能统一处理这种错误的..不想每个页面都做这样的判断处理if(session[""]==null){}...新手分不多求高手们帮忙.. 解决方案 本帖最后由 u011845849 于 2014-01-10 14:14:52 编辑解决方案二:尽量不要用session.你可以定义一个页面BasePage.aspx

python清除字符串里非字母字符的方法

  本文实例讲述了python清除字符串里非字母字符的方法.分享给大家供大家参考.具体如下: ? 1 2 3 4 5 6 7 8 9 s = "hello world! how are you? 0" # Short version print filter(lambda c: c.isalpha(), s) # Faster version for long ASCII strings: id_tab = "".join(map(chr, xrange(256))

ajax请求 session超时

问题描述 ajax请求 session超时 ajax请求,session超时的情况下,怎么跳转到首页?通过request.getHeader(""x-requested-with"")可以获取到是ajax请求的,也知道将信息放到response,但是页面上要写一个jquery.ajaxSetup({...})处理ajax请求时session的超时,这个是怎么用的???放到什么位置 解决方案 超时的时候你返回一个特殊信息,如offline,ajax判断返回信息存在of

Web 开发中 Ajax 的 Session 超时处理

在 Java Web 开发中,当session超时的情况下,普通页面的跳转好处理.关于Ajax的请求超时处理,就需要特殊处理下了. 先写一个统一的过滤器,或者拦截器,针对Ajax请求进行过滤处理,下面示例以Filter为例: public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServ

如何使用C# 在WORD单元格里对部分字符添加下划线

问题描述 如何使用C# 在WORD单元格里对部分字符添加下划线 请问如何使用C# 在某个WORD单元格里对[部分字符]添加下划线,注意是部分字符,不是单元格里所有的字符 解决方案 类似这种问题最佳的做法就是先录制一个宏,然后对照自动产生的代码来写 解决方案二: 首先确保选中单元格的文字,然后对选区加上下划线.

窗口命令符ping一个外国网址,会显示字符动画,网址忘记了,求那个网址!!!

问题描述 窗口命令符ping一个外国网址,会显示字符动画,网址忘记了,求那个网址!!! 窗口命令符ping一个外国网址,会显示字符动画,网址忘记了,求那个网址!!! 解决方案 论坛貌似有人发过,建议搜一下. 解决方案二: telnet towel.blinkenlights.nl

关于session超时的问题

问题描述 请问一下,如果我在页面中有一个javascript的定时器,每10秒执行一次.如果用户长时间未操作的话,session是否会超时呢?没有定时器过了那个设置的session超时时间肯定会提示登录超时. 问题补充:andilyliao 写道 解决方案 这样得自己做一个假的超时了 你每次用户提交的时候都把后台的一个守护线程中的一个数设置为1000 然后这个线程自己每个一个步长时间减1 等到减没了把session清除 也就这样办了 呵呵解决方案二:引用这样得自己做一个假的超时了 你每次用户提交

jquery ajax方法调用在session超时以后如何跳转到登录页面?

问题描述 jquery ajax方法调用在session超时以后如何跳转到登录页面?session超时以后虽然被过滤器过滤到了,但是并不会跳转到登录页面请求具体的解决方法.我参考了这篇文章,但是我调用ajaxStart不起作用.http://www.blogjava.net/vickzhu/archive/2009/06/05/280223.htmlext jquery 用户访问超时(ext session过期) 解决两种情况下的用户访问超时.a)普通http请求的session超时.b)异步h

正则表达式:求在html里提取以下字符的正则表达式

问题描述 正则表达式:求在html里提取以下字符的正则表达式 KQYPR-EPACT-TDMHO-PKSGQ 如何提取出 [5个字母]-[5个字母]-[5个字母]-[5个字母] 这样的字符串?谢谢 解决方案 (w{5}-){3}w{5} 解决方案二: w{5}-w{5}-w{5}-w{5}