2008-10-07 44 views

回答

25

這是我的蹩腳實驗;我創建了一個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」文件。然後我加載了另一個網頁瀏覽器並確認應用程序處於脫機狀態然後我重新訪問了我的「加載」請求......它完成了第3步的所有步驟。

這確認了當前請求完成加載並且新請求被拒絕。

3

從ScottGu的博客:

基本上,如果你把一個文件 這個名字在Web應用程序 目錄的根目錄,ASP.NET 2.0 將停機的應用,卸載 來自 服務器的應用程序域,並停止處理任何新的 傳入的請求,該請求爲該 應用程序。 ASP.NET也將隨後 通過發送 回 app_offline.htm文件的內容(例如在應用程序動態 網頁上的所有請求作出迴應:你 可能希望有一個「下 施工現場」或「下載爲 維護「消息)。

App_Offline.htm - ScottGu's Blog

所以,現在看來似乎會繼續處理當前請求,但阻止新傳入的請求。

相關問題