gpt4 book ai didi

asp.net - 是否可以在 IIS 中禁用 ASP.NET 网站 sleep ?

转载 作者:行者123 更新时间:2023-12-04 04:11:12 26 4
gpt4 key购买 nike

我在 IIS 中运行我的网站,并且在那里有一些正在运行的计时器。 (我知道这是一个糟糕的设计并计划重新编码但是现在我想检查是否有快速解决方案)

一段时间后,网站将进入休眠状态,这就是为什么我的计时器事件什么也不做。

是否有 IIS 设置或其他拒绝 sleep 的方法?

最佳答案

好吧,这可能对您有用,详情如下:-

http://forums.asp.net/t/1950241.aspx?ASP+NET+MVC+website+goes+to+sleep+How+to+nake+it+always+awake+

有很多方法可以在 .NET 中设置超时( session 超时、表单例份验证超时和与 IIS 相关的超时)。您的问题很可能与 IIS 空闲超时有关,如下所述:

在 IIS 中设置 Application IdleTimeout 属性:-

您可能需要检查在 IIS 中为什么配置了超时,因为此超时将覆盖您的 web.config 中定义的超时。

在 IIS 中有一个称为空闲超时的设置,默认为 20 分钟。这可以解释您的早期超时问题。

Configuring the IdleTimeout property within IIS

Scott Hanselman 还解决了在 this blog post 中使用表单例份验证处理超时时可能发生的奇怪问题。以及。

其他一些常见的超时可能是通过 Session 或 Forms 身份验证来实现的,它们将按如下所示进行调整。

在 web.config 中设置 SessionState 超时:-

您可以在 web.config 文件中的元素中更新 session 状态的超时属性(如果这是实际超时),如下所示(默认为 20 分钟,如下所示):

<configuration> 
<system.web>
<!-- Adjust the timeout property below -->
<sessionState mode="InProc" timeout="20"></sessionState>
</system.web>
</configuration>

在 web.config 中设置表单例份验证超时:-

您可以通过调整 web.config 文件元素中的超时属性来调整应用程序中表单例份验证的特定超时属性。您还需要注意,如果您将 slideExpiration 属性与超时结合使用,因为它们实际上可能比列出的超时更早到期。
<authentication mode="Forms"> 
<forms name=".ASPXAUTH" loginUrl="~/Login.aspx" timeout="yourTimeoutInMinutes"></forms>
</authentication>

因此,如果您想将身份验证 token 保持“有效”的时间延长至 360 分钟(6 小时),您可以将其设置如下:
<authentication mode="Forms"> 
<forms name=".ASPXAUTH" loginUrl="~/Login.aspx" timeout="360"></forms>
</authentication>

关于asp.net - 是否可以在 IIS 中禁用 ASP.NET 网站 sleep ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23235890/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com