我有一個ASP.NET Web應用程序,我正在部署,並且試圖找出最佳方法來管理應該在啓動時指向哪個環境,並確保我沒有忽略任何選項。什麼是遠程配置正在運行的asp.net web應用程序的最佳方式?
首先有點背景。
該應用程序是網頁從一個構建服務器自動部署,使用由所述持續構建產生的僞影。部署軟件包包含了每個可用的環境配置設置,所以你最終的東西是這樣的:
/Config/Environments/Development.xml
/Config/Environments/UAT.xml
/Config/Environments/Production.xml
的問題是,什麼是來指示該應用程序的最佳方式,當它啓動時,它應該處於何種環境配置文件加載?
理想情況下,我想能夠改變運行的應用程序如果有可能的當前環境下,但我很高興能跳過這個現在是如果需要的話我可以一直做了重新部署。
我也想避免改變任何由構建創建的文物,特別是因爲其部署到Web包是一個zip文件,這樣做將意味着重建Web部署包。
我想出了以下選項:
使用環境變量在目標機器上,在與啓動什麼樣的環境了暗示,如果不存在,默認情況下發展。這樣做的主要缺點是我不能在指向不同環境的同一臺機器上運行應用程序的兩個實例,並且由於我們通常將uat和臨時環境部署到同一臺機器,這可能會成爲問題。
遠程編輯web.config指示着,我不知道如何做到這一點就其環境,但它可能是最好的選擇(?)。
您可以使用web部署來做些事情,例如告訴它在運行時設置web.config的值,但我不知道這是否可行(?)。
我是否缺少明顯的東西?任何幫助將不勝感激!