Azure应用程序服务部署的第4版-错误\u用户\u未\u授权\u用于\u CREATEAPP

Azure应用程序服务部署的第4版-错误\u用户\u未\u授权\u用于\u CREATEAPP,azure,azure-web-app-service,azure-pipelines-release-pipeline,Azure,Azure Web App Service,Azure Pipelines Release Pipeline,这是我们的后续问题。原来问题的答案对我有帮助,但我被困在了别的地方。作为提醒,我想使用发布配置文件部署我的应用程序。Azure中的My web app在wwwroot中有两个子文件夹,其中一个子文件夹名为后端。我想将我的应用程序部署到该文件夹。我不知道为什么msdeploy想要创建任何东西,因为web应用已经存在了-我只需要在后端文件夹中获取工件 以下是日志的相关部分(一些名称更改为xyz): 2018-06-14T09:19:25.0295238Z开始执行msdeploy.exe 2018-0

这是我们的后续问题。原来问题的答案对我有帮助,但我被困在了别的地方。作为提醒,我想使用发布配置文件部署我的应用程序。Azure中的My web app在wwwroot中有两个子文件夹,其中一个子文件夹名为后端。我想将我的应用程序部署到该文件夹。我不知道为什么msdeploy想要创建任何东西,因为web应用已经存在了-我只需要在后端文件夹中获取工件

以下是日志的相关部分(一些名称更改为xyz):

2018-06-14T09:19:25.0295238Z开始执行msdeploy.exe

2018-06-14T09:19:25.0323018Z“C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe”-来源:package='D:\a\r1\a\artifacts\drop\xyz.zip'-dest:auto,computerName=”https://xyz.scm.azurewebsites.net:443/msdeploy.axd?site=xyz/backend,userName=“$xyz”,password=“***”,authtype=“basic”,includeAcls=“False”-动词:sync-disableLink:AppPoolExtension-disableLink:ContentExtension-disableLink:CertificateExtension-setParamFile:“D:\a\r1\a\artifacts\drop\xyz.SetParameters.xml” -enableRule:DoNotDeleteRule-retryAttempts:6-retryInterval:10000

2018-06-14T09:19:25.6154385Z信息:使用ID“89f1210b-39ba-4758-b7ee-76a06407a503”连接到远程服务器

2018-06-14T09:19:28.08002Z信息:创建应用程序(默认网站)

2018-06-14T09:19:28.2012951Z###[调试]rc:1

2018-06-14T09:19:28.2013216Z###[调试]rc:1

2018-06-14T09:19:28.2013360Z##[调试]成功:错误

2018-06-14T09:19:28.2013523Z###[调试]成功:错误

2018-06-14T09:19:28.2073234Z###[错误]未能将web包部署到应用程序服务

2018-06-14T09:19:28.2081930Z###[调试]已处理:###vso[task.issue type=error;]无法将web包部署到应用程序服务

2018-06-14T09:19:28.2082198Z##[调试]{}

2018-06-14T09:19:28.2082470Z##[debug]System.DefaultWorkingDirectory=D:\a\r1\a

2018-06-14T09:19:28.2083178Z###[错误]错误代码:错误用户未授权CREATEAPP更多信息:无法 在以下情况下使用指定的提供程序(“createApp”)完成操作: 使用Web管理服务进行连接。如果 服务器管理员尚未授权用户执行此操作。 createApp了解更多信息 在:

错误计数:1


原因是Azure希望站点名称在
scm.azurewebsites.net:443/msdeploy.axd?site=%SiteNameHere%“
中显示两次,默认情况下,第二次使用文件
SetParameters.xml
中的值作为参数

因此,您需要在xxx.SetParameters.xml编程(例如PowerShell或其他任务)中修改IIS Web应用程序名称参数的值,然后它就可以正常工作了


Azure staging web deploy因

失败。我已设法解决此问题。根据,我需要在
SetParameters.xml
中设置正确的参数。我通过将以下内容添加到Visual Studio生成任务中来实现此目的:

/p:DeployIisAppPath="xyz"

其中
xyz
是发布配置文件中
deployiisappath
元素的值。

您是否在应用程序服务的应用程序设置中指定了虚拟应用程序?听起来好像它认为应用程序在IIS中不存在,它想创建一个,但部署用户帐户无法做到这一点。@juunas我有一个虚拟应用程序指定的离子:/backend映射到site\wwwroot\backend。也许我应该将其更改为虚拟目录而不是应用程序?我已经很久没有尝试虚拟目录了,所以我无法直接说出问题所在。您是否看过这篇文章:?我想我已经正确设置了。当我使用sam从VS 2017手动发布时e发布配置文件,发布成功,并且我的应用程序在后端文件夹中运行。不知何故,这对我不起作用:更改此生成参数或向部署任务传递的xml不会导致对部署日志中显示的站点参数进行更改。知道吗?我在生成中也使用了clean选项。
xyz
通常匹配s的Web应用名称。例如,当我必须部署到Web应用下的虚拟目录时,我必须将其更改为
xyz\v2
。非常感谢!我在Azure Pipelines中连续4天研究该问题!最后,我使用Powershell脚本任务替换SetParameters.xml中的值