2011-03-29 24 views
7

當我將網站發佈到生產環境時,通常會在我的根目錄中放置一個app_offline.htm。但是,有時候,如果網站發生了一些重大變化,我想先點擊一下,以確保它是穩定的,而不允許訪問除我以外的任何人。app_offline替代

據我所知,這是不可能的,但我希望有人有着簡潔的解決方案......

該解決方案必須包括如果某人有一個深層鏈接進入該網站,所以使用不幸的是,根目錄下的default.htm/asp頁面不會執行該操作。

回答

4

我同意上面的登臺環境回答,但除此之外,這裏有一種可能的方法:臨時阻止除你自己之外的所有IP地址。這可以通過IIS目錄安全性配置或以編程方式實現any number of ways

您可以將所有非授權用戶重定向到某種類型的正在建設中的頁面。同時,您可以愉快地從您的IP瀏覽該網站。當該網站經過審查時,您可以刪除該IP限制,並且該網站可供全世界使用。

+0

不錯。我是否可以控制響應,或者用戶是否顯示默認的IIS頁面或404?謝謝。 (在這裏沒有IIS,所以不能測試) – 2011-03-29 19:05:21

+1

從IIS你可以處理403.6 Forbidden消息並將它們重定向到你選擇的消息。 – LesterDove 2011-03-29 19:27:58

1

這是一件很難實現的事情。這就是爲什麼你應該有一個臨時環境,在運送到生產環境之前應該驗證所有內容。然後在部署過程中(如果需要很長時間,但不應該),您可以使用App_Offline文件。這個臨時環境應儘可能接近您的生產環境(就軟件,補丁和配置而言,當然不是硬件方面)。

+0

「這個暫存環境應儘可能地接近您的生產環境」目前,這不是,這就是我所關心的。我在下一個版本中的目標是讓開發,測試和生產環境保持一致。這是一個稍微凌亂的項目,我剛從.NET 1.1轉換到3.5 VS2008。 – 2011-03-29 18:42:04

1

另一個可以讓你從web.config控制事物的快速建議可能包括一個自定義模塊,它將所有請求重定向到一個靜態頁面,除了由過濾器定義的那些(即主機名,url嗅探),可以通過web.config。