Azure New AzWebAppBackup:操作返回无效的状态代码';错误请求';
当我尝试使用Azure New AzWebAppBackup:操作返回无效的状态代码';错误请求';,azure,powershell,azure-web-app-service,backup,Azure,Powershell,Azure Web App Service,Backup,当我尝试使用New AzWebAppBackupcmdlet通过Azure Powershell执行Azure应用程序服务备份时,如下所述: 我收到以下错误消息: PS Azure:\> New-AzWebAppBackup -ResourceGroupName "MyResourceGroup" -Name "MyWebApp" -StorageAccountUrl "https://mystorageaccount.file.core.windows.net/" New-AzWebA
New AzWebAppBackup
cmdlet通过Azure Powershell执行Azure应用程序服务备份时,如下所述:
我收到以下错误消息:
PS Azure:\> New-AzWebAppBackup -ResourceGroupName "MyResourceGroup" -Name "MyWebApp" -StorageAccountUrl "https://mystorageaccount.file.core.windows.net/"
New-AzWebAppBackup : Operation returned an invalid status code 'BadRequest'
At line:1 char:1
+ New-AzWebAppBackup -ResourceGroupName "MyResourceGroup" -Name " ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : CloseError: (:) [New-AzWebAppBackup], DefaultErrorResponseException
+ FullyQualifiedErrorId : Microsoft.Azure.Commands.WebApps.Cmdlets.WebApps.NewAzureWebAppBackup
有人知道我错过了什么吗?我很感谢你的建议。非常感谢。大家好,欢迎来到Stack Overflow 希望您的webapp满足进行备份的先决条件。备份和恢复功能要求应用程序服务计划位于标准层或高级层。有关完整的详细信息,请参阅 最初执行cmdlet时,我遇到了相同的错误。但是,使用cmdlet传递
-debug
开关有助于我更好地理解错误:
{
"ErrorEntity": {
"ExtendedCode": "04205",
"MessageTemplate": "The provided URI is not a SAS URL for a container (it needs to be https and it has to have 2 segments).",
"Parameters": [],
"Code": "BadRequest",
"Message": "The provided URI is not a SAS URL for a container (it needs to be https and it has to have 2 segments)."
}
-StorageAccountUrl
参数要求传递SAS URL(请参阅文档)。存储帐户的SAS URL的格式为:
sasurl=https://$storagename.blob.core.windows.net/$container$sastoken
要生成SAS令牌,请运行以下操作:
# Retrieve one of the Storage Account keys
$key = (Get-AzStorageAccountKey -ResourceGroupName "<rg-name>" -AccountName "<storage-account-name>").Value[0]
# Populate the Storage Account context
$ctx = New-AzureStorageContext -StorageAccountName "<storage-account-name>" -StorageAccountKey $key
# Generate the SAS token
$sastoken = New-AzureStorageContainerSASToken -Name "<container-name>" -Permission rwdl -Context $ctx
# Generate the SAS URL
$sasurl = "https://<storage-account-name>.blob.core.windows.net/<container-name>$sastoken"
# Create a backup
New-AzureRmWebAppBackup -ResourceGroupName "<rg-name>" -Name "<app-name>" -StorageAccountUrl $sas -BackupName "<backup-name>"
#检索一个存储帐户密钥
$key=(Get-AzStorageAccountKey-ResourceGroupName”“-AccountName”“)。值[0]
#填充存储帐户上下文
$ctx=新AzureStorageContext-StorageAccountName”“-StorageAccountKey$key
#生成SAS令牌
$sastoken=New AzureStorageContainerSASToken-Name”“-Permission rwdl-Context$ctx
#生成SAS URL
$sasurl=”https://.blob.core.windows.net/$sastoken“
#创建备份
新AzureRmWebAppBackup-ResourceGroupName”“-Name”
希望这有帮助!不可能告诉,添加-Debug
并提供正在发送的请求和实际答案,请hi:-)太好了!非常感谢。这确实帮助了我,并且工作得很好。只是为了让您和所有其他可能的用户知道$sasurl的最后一个命令中有一个输入错误。旧:New AzureRmWebAppBackup-ResourceGroupName”“-Name”“-StorageAccountUrl$sas-BackupName”“新建:新建AzureRmWebAppBackup-ResourceGroupName”“-Name”“-StorageAccountUrl$sasurl-BackupName”“@JAST啊,很好,谢谢!很高兴知道这对您有帮助。:@JAST看起来有编辑冲突。请随时重新提交编辑。;)