【问题标题】:No required "Session Timeout", [closed]不需要“会话超时”,[关闭]
【发布时间】:2013-06-10 22:40:24
【问题描述】:

在我的项目会话中只有 30 分钟可用(默认情况下)。

但是...我想禁用这种会话超时。意味着我需要无限时间进行会话,在此期间我的网站永远不会再次登录。

【问题讨论】:

  • 您不能将会话超时设置为无限制..
  • 您使用的是哪个版本的 asp.net 框架。框架 4 有 20 分钟的默认值。 stackoverflow.com/questions/12756910/…
  • @Shekhar 我正在使用 4.0 框架。我也试过 但它再次需要在 2 或 3 小时内登录过程。

标签: asp.net .net session session-timeout


【解决方案1】:

尝试增加超时。如果您想存储登录信息,请使用 cookie

<configuration>
  <system.web>
  <sessionState timeout="525600"></sessionState>
 </system.web>
</configuration> 

【讨论】:

  • 此会话在 120 分钟时超时。但我需要无限。
  • 你不能设置无限制。对于您想要的,还有其他技术,例如 cookie。
  • 如果存在无限,那么您的服务器会在一段时间后“烧毁”。
  • 我试过这个,但 2 到 3 小时后会话过期了。
【解决方案2】:

试试这个 最大会话超时

<configuration>
  <system.web>
     <sessionState timeout="525600"></sessionState>
  </system.web>
</configuration>

【讨论】:

  • 我试过这个,但 2 到 3 小时后会话过期了。
  • 最大值为365天
  • 当我使用它时,服务器会话会在 2 -4 小时后超时。
【解决方案3】:

永远不要这样做!

如果用户在其浏览器上按下 X 按钮,他的会话(及其所有对象)将始终保存在服务器内存中!

解决方案是keeping ASP.NET Session alive using this simple javascript hack,不要进行非常长的会话。

Javascript 强制页面向服务器发送空数据,这是一种 ping。
服务器不会发回任何内容,但会话超时会自动重置。
您可以将会话时间设置为 20 分钟,将 ping 计时器设置为 19 分钟。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-15
    相关资源
    最近更新 更多