惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Cloudbric
Cloudbric
E
Exploit-DB.com RSS Feed
SecWiki News
SecWiki News
Forbes - Security
Forbes - Security
N
News | PayPal Newsroom
S
Security @ Cisco Blogs
Schneier on Security
Schneier on Security
V
V2EX - 技术
S
Secure Thoughts
W
WeLiveSecurity
Google DeepMind News
Google DeepMind News
C
CERT Recently Published Vulnerability Notes
NISL@THU
NISL@THU
S
Securelist
S
Security Archives - TechRepublic
Know Your Adversary
Know Your Adversary
V
Vulnerabilities – Threatpost
Security Latest
Security Latest
Recent Commits to openclaw:main
Recent Commits to openclaw:main
G
GRAHAM CLULEY
H
Hacker News: Front Page
Microsoft Azure Blog
Microsoft Azure Blog
I
Intezer
Google Online Security Blog
Google Online Security Blog
美团技术团队
阮一峰的网络日志
阮一峰的网络日志
T
The Exploit Database - CXSecurity.com
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Webroot Blog
Webroot Blog
Jina AI
Jina AI
Engineering at Meta
Engineering at Meta
P
Proofpoint News Feed
The Cloudflare Blog
I
InfoQ
L
LangChain Blog
U
Unit 42
P
Proofpoint News Feed
S
Schneier on Security
S
Security Affairs
Y
Y Combinator Blog
T
Tenable Blog
N
News and Events Feed by Topic
MyScale Blog
MyScale Blog
量子位
Google DeepMind News
Google DeepMind News
Cyberwarzone
Cyberwarzone
博客园 - 聂微东
D
Darknet – Hacking Tools, Hacker News & Cyber Security
GbyAI
GbyAI
AWS News Blog
AWS News Blog

博客园 - amber lee zhao

(武义检察院)sqlplus执行sql脚本 windows下squid安装与配置 缓存服务器 System.Data.OracleClient requires Oracle client software version 8.1.7 or greater. Oracle Listener crash in Windows 【转】Session丢失原因分析 【转】Session丢失问题二 OracleMembershipProvider、OracleRoleProvider源代码 使用EnterpriseLibrary插入Oracle CLOB数据 使用System.Net.Mail发送邮件 - amber lee zhao 【转】oracle SQL性能优化 DataGridView导出为Excel文件 - amber lee zhao 使用HtmlAgilityPack批量抓取网页数据 OracleMembershipProvider与登录控件使用的技巧 - amber lee zhao 在ASP.NET中使用Quartz.net进行工作调度 结合OracleMembershipProvider开发简单的asp.net应用程序----配置web.config文件 C#版本的OracleMembershipProvider Double-Array Trie分词词典简述 [转] sharpICTCLAS 中在找出所有词组组合时的优化 .net下ICTCLAS原子分词和lucene的Token比较
【转】Session丢失问题解决方法一
amber lee zhao · 2008-01-20 · via 博客园 - amber lee zhao

原文:http://www.cnblogs.com/cnnjvirus/archive/2006/03/07/344474.html

Session丢失已经是一种习以为常的问题了,在自己也了解一些如何解决的问题,但是也一直没有机会去用,现在由于新的项目要在B/S下开发,所以不得不让我考虑Session的问题。

解决session丢失的问题有两种方法:1)将session保存在一台sate server中。2)将session保存在sql server中。我们使用的数据库是oracle,不想再装一个数据库,所以用了第一种方法。

首先根据网上查的资料对webconfig文件中session部分进行修改。如下:

<sessionState
  mode="StateServer"
  cookieless="false"
  timeout="240"
  stateConnectionString="tcpip=10.164.222.122:42424"
  stateNetworkTimeout="14400"
/>
<machineKey
  validationKey="78AE3850338BFADCE59D8DDF58C9E4518E7510149C46142D7AAD7F1AD49D95D4"
  decryptionKey="5FC88DFC24EA123C"
  validation="SHA1"
/>

然后再在10.164.222.122 这台电脑上的asp.net state server 服务启动

这样基本上就行了。体验一下。

我用了一个测试程序,在3个小时以后session仍然可用,更绝的是我的电脑都重起了,在其它电脑上打开的网页(81M.net)中session仍然可用。一番体验以后,感觉还真不错。

.NET Framework 常规参考

<sessionState> 元素
为当前应用程序配置会话状态设置。

<configuration>
<system.web>
<sessionState>

<sessionState mode="Off|InProc|StateServer|SQLServer"
cookieless="true|false"
timeout="number of minutes"
stateConnectionString="tcpip=server:port"
sqlConnectionString="sql connection string"
stateNetworkTimeout="number of seconds"/>
必选属性
属性 选项 说明
mode 指定在哪里存储会话状态。
Off 指示会话状态未启用。
InProc 指示在本地存储会话状态。
StateServer 指示在远程计算机上存储会话状态。
SQLServer 指示在 SQL Server 上存储会话状态。

可选属性
属性 选项 说明
cookieless 指定不具有 Cookie 的会话是否应用于标识客户端会话。
true 指示应使用不具有 Cookie 的会话。
false 指示不应使用没有 Cookie 的会话。默认值为 false。
timeout 指定在放弃一个会话前该会话可以处于空闲状态的分钟数。默认值为 20。
stateConnectionString 指定远程存储会话状态的服务器名称和端口。例如“tcpip=127.0.0.1:42424”。当 mode 为 StateServer 时该属性是必需的。
sqlConnectionString 为 SQL Server 指定连接字符串。例如“data source=localhost;Integrated Security=SSPI;Initial Catalog=northwind”。当 mode 为 SQLServer 时该属性是必需的。
stateNetworkTimeout 在使用 StateServer 模式存储会话状态时,指定在放弃会话之前 Web 服务器和状态服务器之间的 TCP/IP 网络连接空闲的时间(以秒为单位)。默认值为 10。

备注
使用 StateServer 模式

确 保运行 ASP.NET 状态服务的服务器是要存储会话状态信息的远程服务器。该服务与 ASP.NET 一起安装,其默认位置为 <驱动器>:"systemroot"Microsoft.NET"Framework"version" aspnet_state.exe。
在应用程序的 Web.config 文件中,设置 mode=StateServer 并设置 stateConnectionString 属性。例如,stateConnectionString="tcpip=sarath:42424"。
使用 SQLServer 模式

在 运行 SQL Server 的计算机(它将存储会话状态)上运行 InstallSqlState.sql(默认的安装位置为 <驱动器>:"systemroot"Microsoft.NET"Framework"version)。这将创建一个名为 ASPState 的数据库,该数据库具有新的存储过程并且在 TempDB 数据库中具有 ASPStateTempApplications 表和 ASPStateTempSessions 表。
在应用程序的 Web.config 文件中,设置 mode=SQLServer 并设置 sqlConnectionString 属性。例如,sqlConnectionString="data source=localhost;Integrated Security=SSPI;Initial Catalog=northwind"。
示例
以下示例指定若干会话状态配置设置。

<configuration>
<system.web>
<sessionState mode="InProc"
cookieless="true"
timeout="20"/>
</sessionState>
</system.web>
</configuration>
要求
包含于:<system.web>

Web 平台:IIS 5.0、IIS 5.1、IIS 6.0

配置文件:Machine.config、Web.config

配置节处理程序:System.Web.SessionState.SessionStateSectionHandler