應用程式離線檔案 (app_offline.htm
)
ASP.NET Core模組會使用應用程式離線檔案 (app_offline.htm
) 來關閉應用程式。
如果在應用程式的根目錄中偵測到名稱為 app_offline.htm
的檔案,ASP.NET Core模組會嘗試正常關閉應用程式並停止處理傳入要求。 如果應用程式仍在中 shutdownTimeLimit
定義的秒數之後執行,ASP.NET Core模組會停止執行中的進程。
當檔案 app_offline.htm
存在時,ASP.NET Core模組會透過傳回檔案的內容 app_offline.htm
來回應要求。 app_offline.htm
必須小於 4 GB。 移除檔案 app_offline.htm
時,下一個要求會啟動應用程式。
使用跨處理序裝載模型時,若未開啟連線,應用程式可能無法立即關閉。 例如,WebSocket 連線可能會延遲應用程式關閉。
已鎖定的部署檔案
當應用程式執行時,會鎖定部署資料夾中的檔案。 無法於部署期間覆寫已鎖定的檔案。
app_offline.htm
是釋放鎖定檔案的主要機制。 app_offline.htm
由 Web Deploy 用來正確停止並啟動應用程式。
app_offline.htm
可以手動用來啟動和停止應用程式 (需要 PowerShell 5 或更新版本) :
$pathToApp = '{PATH TO APP}'
New-Item -Path $pathToApp -Name "app_offline.htm" -ItemType "file"
# Provide script commands here to deploy the app
Remove-Item -Path $pathToApp\app_offline.htm
在上述 PowerShell 腳本中:
- 預留位置
{PATH TO APP}
是應用程式的路徑。 - 命令
New-Item
會停止應用程式集區。 - 命令
Remove-Item
會啟動應用程式集區。 - 命令與
Remove-Item
命令之間的New-Item
命令是由開發人員提供來部署應用程式。
您也可以手動停止伺服器上的 IIS 管理員中的應用程式集區來解除鎖定檔案。 使用 IIS 管理員停止並重新啟動應用程式集區時,請勿使用 app_offline.htm
檔案。