首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >asp.net应用程序iis7会话状态正在跨越不同位置的多个用户

asp.net应用程序iis7会话状态正在跨越不同位置的多个用户
EN

Stack Overflow用户
提问于 2011-09-14 09:59:17
回答 1查看 5.2K关注 0票数 1

我得到了一个asp.net web应用程序(2.0),我们将其从iis6迁移到iis7。它工作了6个月。三天前,我们已经看到一个登录用户看到其他用户信息的问题。(会话信息)会话正在进行中

我唯一看到的不同之处是iis7应用程序池处于集成模式。

我们已经把应用程序取下来了。应用程序web配置如下

代码语言:javascript
复制
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
  <remove name="ScriptModule"/>
  <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</modules>
<handlers>
  <remove name="WebServiceHandlerFactory-Integrated"/>
  <remove name="ScriptHandlerFactory"/>
  <remove name="ScriptHandlerFactoryAppServices"/>
  <remove name="ScriptResource"/>
  <remove name="WebServiceHandlerFactory-ISAPI-2.0"/>
  <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
  <add name="ScriptResource" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" preCondition="integratedMode"/>
  <add name="CrystalImageHandler.aspx_GET" verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" preCondition="integratedMode"/>
  <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</handlers>

有没有人知道这是什么原因应用程序在iis6中有一年没有这个问题了,在iis7中有6个月没有任何问题了。

我们没有使用任何全局变量...

EN

回答 1

Stack Overflow用户

发布于 2011-09-16 22:08:52

iis7有一个通过应用程序池兑现的功能/错误输出

对于3.5 (经典)模式,需要在.aspx扩展IIS7会话交叉/混合/复制时显式关闭它,我在web场检测到一个问题:用户的IIS7会话交叉/混合/复制。一个用户正在获取另一个用户的会话!

经过一些研究,我发现IIS7现在也具有缓存动态内容的能力。这是IIS7中的一个新特性,该版本引入了一些新的缓存特性。(i) IIS7自动缓存静态内容,如HTML页面、图像和样式表。(ii) IIS7现在还具有缓存动态内容的能力。

在IIS7中,禁用任何目录中具有取决于会话状态的.aspx页的asp.net页的缓存。执行此操作的步骤如下: 1.运行服务器管理控制台,然后导航到“角色”“Internet Web服务器(IIS)”“-> ->信息服务”。2.选择要修改的站点。3.选择包含需要关闭缓存的.aspx页的文件夹。4.在功能视图中,双击[输出缓存]。5.如果已经有.aspx扩展的规则,双击它。否则右击并选择“Add…”6.输入.aspx作为“文件扩展名”7.选中“用户模式缓存”、“禁止所有缓存”、选中“内核模式缓存”和“禁止所有缓存”

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7410473

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档