这是this question的后续问题。原始问题的答案对我有帮助,但我被困在其他地方。提醒一下,我想使用发布配置文件部署我的应用程序。我在Azure中的Web应用程序在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" -source:包=' d:\ A \ R1 \一个\工件\降\ xyz.zip' -dest:汽车,计算机名=" HTTPS://xyz.scm.azurewebsites.net:443 / msdeploy.axd站点= XYZ /后端",用户名=" $ XYZ&#34 ;,密码=" ***",的authType ="碱性",includeAcls ="假" -verb: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.0800802Z信息:创建应用程序(默认网站)
2018-06-14T09:19:28.2012951Z ## [debug] rc:1
2018-06-14T09:19:28.2013216Z ## [debug] rc:1
2018-06-14T09:19:28.2013360Z ## [debug]成功:false
2018-06-14T09:19:28.2013523Z ## [debug]成功:false
2018-06-14T09:19:28.2073234Z ## [错误]无法将Web包部署到App Service。
2018-06-14T09:19:28.2081930Z ## [debug]已处理:## vso [task.issue type = error;]无法将Web包部署到App Service。
2018-06-14T09:19:28.2082198Z ## [debug] {}
2018-06-14T09:19:28.2082470Z ## [debug] System.DefaultWorkingDirectory = D:\ a \ r1 \ a
2018-06-14T09:19:28.2083178Z ## [错误]错误代码:ERROR_USER_NOT_AUTHORIZED_FOR_CREATEAPP更多信息:无法 何时完成与指定提供程序(" createApp")的操作 使用Web管理服务进行连接。如果这可能发生 服务器管理员尚未授权用户执行此操作。 createApp http://go.microsoft.com/fwlink/?LinkId=178034了解详情 at:http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_USER_NOT_AUTHORIZED_FOR_CREATEAPP。
错误计数:1。
答案 0 :(得分:1)
原因是,期望该网站名称的Azure将在scm.azurewebsites.net:443/msdeploy.axd?site=%SiteNameHere%"
中显示两次,并且与参数相同的值(默认值为SetParameters.xml
)将用作第二个。
因此,您需要在xxx.SetParameters.xml编程中修改IIS Web应用程序名称参数的值(例如PowerShell或其他任务),之后它应该可以正常工作。
Azure暂存Web部署失败,并显示ERROR_USER_NOT_AUTHORIZED_FOR_CREATEAPP but not for production
答案 1 :(得分:0)
我设法解决了这个问题。根据{{3}},我需要在SetParameters.xml
中设置正确的参数。我通过在Visual Studio Build任务中添加以下内容来完成此操作:
/p:DeployIisAppPath="xyz"
其中xyz
是发布配置文件中DeployIisAppPath
元素的值。