【问题标题】:asp.net Session being shared between two separate instances of Firefox (12)asp.net 会话在两个单独的 Firefox 实例之间共享 (12)
【发布时间】:2012-05-29 16:02:19
【问题描述】:

一旦用户登录 (Session["loginuser"]) 并使用 Response.Redirect 重定向到另一个页面,我将设置一个会话变量。我正在两个单独的 Firefox 浏览器实例中对此进行测试。使用了两个不同的登录名。登录工作正常,但登录后如果我点击浏览器窗口 1 上的任何链接并点击浏览器窗口 2 上的任何其他链接,窗口 2 将显示窗口 1 的用户名!!!

不知道是什么问题..谁能帮忙!

【问题讨论】:

标签: asp.net session


【解决方案1】:

使用 cookie 在每个浏览器的基础上保存会话。这意味着当您在同一台计算机上使用相同的浏览器时,它们将被共享。这可能是也可能不是问题,因为它不会影响用户,除非必须能够在同一台计算机上登录多个帐户。

这篇文章将告诉您如何打开无 cookie 会话来解决您的问题:http://msdn.microsoft.com/en-us/library/ms972429.aspx

您应该做的基本操作是转到您的 web.config 并找到如下所示的行并将 cookieless 更改为 true。

<configuration>
  <sessionstate 
  mode="inproc"
  cookieless="true" 
  timeout="20" 
  sqlconnectionstring="data source=127.0.0.1;user id=<user id>;password=<password>"
  server="127.0.0.1" 
  port="42424" 
 />

【讨论】:

  • 如果我说 cookieless="true" 或 cookieless="UseUri",它会不断将我重定向回登录页面。
  • 您可能需要修改您正在执行的重定向。维护现在嵌入在 URL 中的会话数据非常重要。您使用的是绝对 URL 吗?如果还没有,请尝试将 response.redirect 的内容切换为相对 URL。
猜你喜欢
  • 2017-09-13
  • 2013-02-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-01
  • 1970-01-01
相关资源
最近更新 更多