3

我的 Web 应用程序 (ASP.NET 4.0) 从客户端调用服务器(使用 AjaxPro 库,但我认为这没有任何区别)。该调用正在服务器上启动一个可能长时间运行的任务——有时可能需要大约 5 分钟才能完成。这次我很乐意等待,但由于某种原因,我的请求在正好 90 秒后被中断 - 2 m 60 秒(根据 FireBug)。它发回服务不可用 503 消息。仅当我在 IIS (7.0) 上托管我的应用程序时才会发生这种情况,它在我的本地 PC 上以 ASP.NET 开发服务器上的 VS2010 的调试模式运行而没有问题(即处理所有 5 分钟的请求而不会中断它)。

到目前为止,我已经尝试了几件事:

  • 我增加了 AjaxPro 全局超时:AjaxPro.timeoutPeriod = 1000000;
  • 我修改了我的 web.config 文件,如下所示:

    <httpRuntime maxRequestLength="102400" executionTimeout="360" /> <sessionState timeout="60"></sessionState>

  • 在 IIS 管理器 -> 站点 -> 我的网站 -> 高级设置中,我增加了连接超时(秒)属性的值。

在此处输入图像描述

  • 在应用程序的应用程序池 -> 高级设置中,我增加了所有可能的超时:

在此处输入图像描述

  • 我试图在服务器端处理程序的代码中增加 HttpContext.Current.Server.ScriptTimeout。

注意似乎有帮助。它在 ASP.NET 开发服务器上运行良好,但在 IIS 上它只是在 90 秒后准确地切断了我的请求。

有什么想法吗,伙计们?

4

3 回答 3

4

在 asp:ScriptManager 中还有另一个称为“AsyncPostBackTimeOut”的超时,默认情况下精确设置为 ... 90 秒。

于 2013-06-05T03:56:24.357 回答
1

你能看看你的网络服务器机器的全局默认值吗?也许配置阻止了您的请求。

system32\inetsrv\config\applicationHost.config

于 2012-07-06T14:39:11.680 回答
1

我有一个类似的问题,并通过增加我的 aspx 页面(大约 17 分钟)的AsyncPostBackTimeOut值来解决它:1000

            <asp:ToolkitScriptManager ID="ToolkitScriptManager1" AsyncPostBackTimeOut="1000" runat="server">
        </asp:ToolkitScriptManager>
于 2016-06-02T07:00:56.120 回答