【问题标题】:Will app_offline.htm stop current requests or just new requests?app_offline.htm 会停止当前请求还是仅停止新请求?
【发布时间】:2008-10-07 17:39:44
【问题描述】:

正如标题所说,如果我在应用程序根目录中放置一个app_offline.htm,它会切断当前正在运行的请求,还是只是新的请求?

【问题讨论】:

    标签: iis


    【解决方案1】:

    这是我的蹩脚实验;我使用以下代码创建了一个 ASPX 页面:

    protected void Page_Load(object sender, EventArgs e)
    {
        Response.BufferOutput = false;
        Response.Write("Step 1<br />");
        System.Threading.Thread.Sleep(10000);
        Response.Write("Step 2<br />");
        System.Threading.Thread.Sleep(10000);
        Response.Write("Step 3<br />");
    }
    

    这段代码只是介绍了一些冗长的页面加载。我访问了该页面,并在加载时创建了一个“app_offline.htm”文件。然后我加载了另一个 Web 浏览器并确认该应用程序处于脱机状态。然后我重新访问了我的“加载”请求......它一直完成到第 3 步。

    这确认当前请求已完成加载并且新请求已被拒绝。

    【讨论】:

    • if you place a file with this name in the root of a web application directory, ASP.NET 2.0 will shut-down the application, unload the application domain from the server, and stop processing any new incoming requests for that application
    【解决方案2】:

    来自 ScottGu 的博客:

    基本上,如果您放置一个文件 网络根目录中的此名称 应用程序目录,ASP.NET 2.0 将关闭应用程序,卸载 应用程序域从 服务器,并停止处理任何新的 传入的请求 应用程序。然后 ASP.NET 也将 响应所有动态请求 通过发送应用程序中的页面 回退内容 app_offline.htm 文件(例如:你 可能想要有一个“网站” 建设”或“下降 维护”消息)。

    App_Offline.htm - ScottGu's Blog

    因此,它似乎会继续处理当前请求,但会停止新的传入请求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多