2017-09-26 241 views
1

我有一個配備了2個部署的Web應用程序的天青web應用程序。與虛擬應用程序在一個單獨的目錄中。這兩個Web應用程序都差不多,只是他們所消費的不同應用程序設置相同/環境變量PORTAL_KEY(如客戶端交換機): enter image description here虛擬應用程序的不同應用程序設置/環境變量

但兩者的虛擬應用程序只能識別PORTAL_KEY=Portal1。我想區分,使得子文件夾

  • /portal1得到PORTAL_KEY=Portal1
  • /portal2得到PORTAL_KEY=Portal2環境變量。

如何在不修改每個文件夾中的appsettings.json的情況下實現該目標(因爲它們將被下一個Web部署覆蓋)。

回答

1

一個Azure Web App中的所有虛擬應用程序都運行在相同的IIS進程(w3wp.exe)中,因此它們不能具有不同的環境變量。

一些可能的備選方案:對於每個虛擬應用程序,例如

  • 使用不同的應用程序設定鍵APP1_PORTAL_KEY vs APP2_PORTAL_KEY。您可以在代碼中創建一個包裝器,以便在查詢環境時添加正確的後綴。
  • 爲每個虛擬應用程序使用不同的Azure Web Apps。這給你最大的分離。
+0

感謝您的回答。不幸的是,你的替代品不能應用。 1)使用不同的應用程序設置鍵不起作用(請參閱問題)。 2)我想使用不同的Azure Web應用程序,但客戶沒有。 – Marcel

+0

@Marcel然後答案是,我不認爲你要求的是可能的 –

+0

我想是的。也許我試着添加不同的發佈配置文件,指向不同的解決方案配置,以不同的'PORTAL_KEY'(像舊的web.config轉換那樣)部署不同的appsettings.json。 – Marcel

相關問題