session mode的inproc改为StateServer,网站不可以访问 <sessionState mode="InProc" cookieless="false" time
2017-07-10 10:18
1751 查看
asp.net的session mode的inproc改为StateServer,网站不可以访问
<sessionState mode="InProc" cookieless="false" timeout="20" />
我把inproc改为StateServer,网站不可以访问, 我的wap网站是c#做的。数据库sql2000,想实现一个session不过期的会话,timeout改了,好像不起作用
session mode 几种状态
开发asp.net应用时,修改web.config中的SessionState节点。
stateserver模式:
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data
source=127.0.0.1;Trusted_Connection=yes" cookieless="false"timeout="120"/>
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="120"/>
InProc模式:
<sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data
source=127.0.0.1;Trusted_Connection=yes" cookieless="false"timeout="120"/>
<sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="120"/> InProc模式 优点:获取session状态的速度快,session状态直接存储在iis的进程中。 缺点:易丢失,经常需要重新登录
StateServer模式 优点:session状态单独存储在一个进程中,不会因为iis或者应用的重启而丢失状态 缺点:获取session状态的速度比InProc慢一些,毕竟是两个不同的进程。
在开发的时候,对应用有一点修改,就会导致应用的重启,这时候如果使用InProc模式 ,那么每次都需要重新登录,比较浪费时间.建议使用StateServer模式。并在iis里面设置超时时间长一些。
注:使用StateServer模式的时候 1、要开启“ASP.NET State Service”服务(设为“自动”) 状态服务
2、如果stateConnectionString的值不是127.0.0.1或者localhost等代表本地地址的值,需要修改注册表:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state \Parameters 节点 → 将 AllowRemoteConnection 的键值设置成“1”(1 为允许远程电脑的连接,0 代表禁止)→ 设置 Port (端口号)
3、session中存储非序列化的对象,如果违反会抛出 无法序列化会话状态。在“StateServer”或“SQLServer”模式下,ASP.NET 将序列化会话状态对象,因此不允许使用无法序列化的对象或 MarshalByRef 对象。如果自定义会话状态存储在“Custom”模式下执行了类似的序列化,则适用同样的限制。这样的异常。如果向session存储自定义的对象,那么该对象的类上一定要加上[Serializable]注释。
<sessionState mode="InProc" cookieless="false" timeout="20" />
我把inproc改为StateServer,网站不可以访问, 我的wap网站是c#做的。数据库sql2000,想实现一个session不过期的会话,timeout改了,好像不起作用
session mode 几种状态
开发asp.net应用时,修改web.config中的SessionState节点。
stateserver模式:
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data
source=127.0.0.1;Trusted_Connection=yes" cookieless="false"timeout="120"/>
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="120"/>
InProc模式:
<sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data
source=127.0.0.1;Trusted_Connection=yes" cookieless="false"timeout="120"/>
<sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="120"/> InProc模式 优点:获取session状态的速度快,session状态直接存储在iis的进程中。 缺点:易丢失,经常需要重新登录
StateServer模式 优点:session状态单独存储在一个进程中,不会因为iis或者应用的重启而丢失状态 缺点:获取session状态的速度比InProc慢一些,毕竟是两个不同的进程。
在开发的时候,对应用有一点修改,就会导致应用的重启,这时候如果使用InProc模式 ,那么每次都需要重新登录,比较浪费时间.建议使用StateServer模式。并在iis里面设置超时时间长一些。
注:使用StateServer模式的时候 1、要开启“ASP.NET State Service”服务(设为“自动”) 状态服务
2、如果stateConnectionString的值不是127.0.0.1或者localhost等代表本地地址的值,需要修改注册表:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state \Parameters 节点 → 将 AllowRemoteConnection 的键值设置成“1”(1 为允许远程电脑的连接,0 代表禁止)→ 设置 Port (端口号)
3、session中存储非序列化的对象,如果违反会抛出 无法序列化会话状态。在“StateServer”或“SQLServer”模式下,ASP.NET 将序列化会话状态对象,因此不允许使用无法序列化的对象或 MarshalByRef 对象。如果自定义会话状态存储在“Custom”模式下执行了类似的序列化,则适用同样的限制。这样的异常。如果向session存储自定义的对象,那么该对象的类上一定要加上[Serializable]注释。
相关文章推荐
- asp.net的session mode的inproc改为StateServer,网站不可以访问
- asp.net的session mode的inproc改为StateServer,网站不可以访问
- Session Data Is Lost When You Use ASP.NET InProc Session State Mode
- sharepoint server 2007 可以使用域名访问网站,但无法使用服务器名访问
- 虚拟主机运行ASP错误解决:HTTP/1.1 New Application Failed when allowSessionState is set to false in web.config
- How to cal Session_End() method when you store the Session state not in Inprc but StageServer, etc.
- IIS发布网站浏览之后看到的是文件目录 & Internal Server Error 处理程序“ExtensionlessUrlHandler-ISAPI-4.0_64bit”在其模块列表中有一个错误模块“IsapiModule” 解决方法 & App_global.asax.pduxejp_.dll”--“拒绝访问。 ”
- ASP.NET 使用mode=”InProc”方式保存Session老是丢失,无奈改成StateServer 模式。
- ASP.NET 使用mode=”InProc”方式保存Session老是丢失,无奈改成StateServer 模式。
- ASP.NET sessionState设置Mode为StateServer,报出Internal Server Error
- 解决:Did not expect server HTML to contain the text node " " in <div>.
- .net知识系列之二:(net内置对象request,reponse,server,session,cookie,application,viewstate)
- WIN7下网站用localhost可以访问改为ip不可访问如何解决
- <authentication+mode="Forms">+是应用级别的...在子目录下用+<authorization>节来控制访问的解决方法
- gvim中Mapping already in use: "<LocalLeader>is", mode "n"错误解决
- 关于用OracleInProcServer.XOraSession连接oracle 的问题。
- linux c struct tm宏定义时有时报dereferencing pointer to incomplete type错误,可以将包含头文件改为#include <sys/timeb.h>
- ASP.NET 使用mode=”InProc”方式保存Session老是丢失,无奈改成StateServer 模式。
- using sql server or sql azure for session state store in asp.net
- <authentication+mode="Forms">+是应用级别的...在子目录下用+<authorization>节来控制访问的解决方法