前段時間,系統升級,由于系統更新發布時間較長,所以必須停掉站點進行更新。導致很多用戶都來反饋系統無法訪問,還認為站點被黑掉了。
所以經過那件事我們也在思考,如何做到不停機,進行熱部署。
單機環境下(雙機或是分布式系統不用考慮這個問題),app_offline.htm是個不錯的選擇,
當asp.net看到應用程序中app_offline.htm文件時,它會關閉應用程序的app-domain,然后將請求發給app_offline的內容。
所以,在維護,升級的時候,就不必停止你的WEB應用程序,而是一個友好的方式提示給用戶,本網站正在更新的提示,這樣體驗會更友好。
1. 創建一個app_offline.htm的HTM頁面文件,
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=gb2312">
<title>站點更新中</title>
</head>
<style>
div {
background-color:#ffffcc;
padding-top:10px;
padding-bottom:10px;
padding-left:10px;
padding-right:10px;
border-style:solid;
border-color:Black;
border-width:1px;
}
</style>
<body>
<div>
<h1>站點更新中</h1>
<p>站點更新中,請稍后訪問。</p>
</div>
</body>
</html>
2. 將app_offline.htm放在你的網站根目錄下。這樣,任何外部的請求的話,都會馬上被轉移到該頁面了。
需要注意的是:
(1)app_offline.htm 不能小于 512 字節。
(2)IIS 站點和進程池不需要停止。
(3)只有對.aspx文件的請求才自動轉到app_offline.htm文件;如果請求的是.htm, .asp等文件,則不會轉到app_offline.htm
新聞熱點
疑難解答