2016-11-24 60 views
5

我正在運行Powershell 5並嘗試使用Set-AzureRmWebApp(而不是Set-AzureResource)來設置「Always關於「web應用程序的屬性。Azure:Powershell:Set-AzureRmWebApp:如何設置「alwaysOn」屬性

我的基本代碼片段與名爲「myWebApp」一個運行的Web App開始,看起來是這樣的:

$name = "myWebApp" 
$resourceGroupName = "myResourceGroup" 
$app_settings = @{"WEBSITE_LOAD_CERTIFICATES"="*";"CommonDatabase"="Common";"WEBSITE_NODE_DEFAULT_VERSION"="0.10.32"} 

$result1 = Set-AzureRmWebApp -ResourceGroupName $resourceGroupName -AppSettings $app_settings -Name $name 
$result2 = Set-AzureRmResource -ResourceGroupName $resourceGroupName -ResourceType Microsoft.Web/sites/config -ResourceName $this.name -PropertyObject $propertiesObject -ApiVersion 2015-08-01 -Force 

第一集-AzureRmWebApp聲明的作品。它將所有變量設置爲$ app_settings,並且它們在Azure Portal刀片中對於myWebApp變得可見。

我試着用「永遠在線」 =上$ app_settings用創建AzureRmWebApp一個屬性,它出現在應用程序設置子列表中的「myWebApp」的性質在Azure的門戶刀片,但在一般設置中的「始終打開」的實際屬性保持關閉。

我在另一個網站上看到,使用Set-AzureRmResource會工作,所以我嘗試了,但它失敗了。

我需要在Powershell中設置Azure WebApp的常規設置中的屬性,特別是「Always On」

+0

的可能的複製[是否有可能使一直在通過管理/資源管理API Azure的網站?](http://stackoverflow.com/questions/26756644/is-it-possible-to -enable-always-on-for-azure-websites-through-management-resourc) – sharbag

+0

Look there:http://stackoverflow.com/a/36811987/1275334 – sharbag

回答

6

「始終開啓」如果WebApp處於免費服務計劃層中,則不支持。如果WebApp處於免費級別,請擴展App Service計劃。請參考document瞭解更多關於如何擴展App Service Plan的信息。請嘗試使用sharbag提到的解決方案。它適用於我,我也檢查了天藍色門戶的運行結果。從溶液剪斷代碼是如下:

$ResourceGroupName = 'Your Group Name' 

    $WebAppName = 'Your WebApp Name' 

    $WebAppPropertiesObject = @{"siteConfig" = @{"AlwaysOn" = $true}} 

    $WebAppResourceType = 'microsoft.web/sites' 

    $webAppResource = Get-AzureRmResource -ResourceType $WebAppResourceType -ResourceGroupName $ResourceGroupName -ResourceName $WebAppName 

    $webAppResource | Set-AzureRmResource -PropertyObject $WebAppPropertiesObject -Force 

enter image description here

如果Web應用程序中自由層服務計劃,當我們嘗試運行PowerShell命令啓用「永遠在線」那麼我們將獲取以下錯誤消息。

enter image description here

+1

我正在付費計劃。它只是格式化屬性哈希似乎沒有記錄在任何地方。 –

+0

謝謝,這個至少在2017/10年工作 – Rambalac