Msbuild msdeploy.axd?site=param值从何而来?

Msbuild msdeploy.axd?site=param值从何而来?,msbuild,azure-devops,msdeploy,Msbuild,Azure Devops,Msdeploy,在Azure DevOps中,我的连续部署管道无法运行msdeploy命令。构建不会抛出任何错误。这是发布部署期间的错误: Error Code: ERROR_USER_NOT_AUTHORIZED_FOR_CREATEAPP 是的,非常普遍,这是最常见的。但我没有设法更改该站点URL参数。 我的本地构建和本地运行的部署命令可以部署到Azure(应用程序服务:xxxx dev app)。 在本地,参数?site=没有显示并且可以工作,如果我手动修改部署脚本并添加?site=,我可以用本地运行的

在Azure DevOps中,我的连续部署管道无法运行msdeploy命令。构建不会抛出任何错误。这是发布部署期间的错误:

Error Code: ERROR_USER_NOT_AUTHORIZED_FOR_CREATEAPP
是的,非常普遍,这是最常见的。但我没有设法更改该站点URL参数。 我的本地构建和本地运行的部署命令可以部署到Azure(应用程序服务:xxxx dev app)。 在本地,参数
?site=
没有显示并且可以工作,如果我手动修改部署脚本并添加
?site=
,我可以用本地运行的部署脚本重现相同的错误

那么,为什么在Azure构建期间将此参数添加到Url中?它的值从何处获得

a)Myparameters.xml如下所示:

<parameters>
<parameter name="IIS Web Application Name" devaultValue="Default Web Site" />
</parameters>
<parameters>
<setParameter name="IIS Web Application Name" value="Default Web Site" />
</parameters>
附录,2019年4月20日: 删除parameters.xml和变量“IIS Web应用程序名称”后,我仍然会得到此部署输出日志行,显示它试图设置
?site=xxxx dev app
参数:

"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" 
-verb:sync 
-source:package='d:\a\r1\a\xxxx CI Pipeline\xxxxToolV01\src\xxxxoolV01\xxxxoolV01\Publish\xxxxoolV01.zip' 
-dest:auto,
      ComputerName='https://xxxx-dev-app.scm.azurewebsites.net:443/msdeploy.axd?site=xxxx-dev-app',
      UserName='$xxxx-dev-app',
      Password='***',
      AuthType='Basic'
-setParam:name='IIS Web Application Name',value='xxxx-dev-app'
-enableRule:AppOffline
-enableRule:DoNotDeleteRule
-userAgent:VSTS_b7d1246f-0592-4548-9a3d-da995f3fb94e_release_1_59_59_5

您是否尝试删除
参数.xml
?如果您不进行部署时配置转换,则不需要它。如果您只需要设置连接字符串和应用程序设置,那么您应该在azure web应用程序上定义它们,而不是将它们存储在web.config/appsettings.json中。如果删除
parameters.xml
文件,则无需指定该值。谢谢@DanielMann的建议,我真的没有什么想法了。但是,即使在删除发布管道变量和文件
parameters.xml
之后,它也会给我日志输出:
错误:源代码不支持名为“IIS Web应用程序名称”的参数。
“IIS Web应用程序名称”在msdeploy命令中有点硬编码。它似乎被请求成为传递的parameters.xml的一部分。是否尝试删除
parameters.xml
?如果您不进行部署时配置转换,则不需要它。如果您只需要设置连接字符串和应用程序设置,那么您应该在azure web应用程序上定义它们,而不是将它们存储在web.config/appsettings.json中。如果删除
parameters.xml
文件,则无需指定该值。谢谢@DanielMann的建议,我真的没有什么想法了。但是,即使在删除发布管道变量和文件
parameters.xml
之后,它也会给我日志输出:
错误:源代码不支持名为“IIS Web应用程序名称”的参数。
“IIS Web应用程序名称”在msdeploy命令中有点硬编码。它似乎被请求成为传递的parameters.xml的一部分。
"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" 
-verb:sync 
-source:package='d:\a\r1\a\xxxx CI Pipeline\xxxxToolV01\src\xxxxoolV01\xxxxoolV01\Publish\xxxxoolV01.zip' 
-dest:auto,
      ComputerName='https://xxxx-dev-app.scm.azurewebsites.net:443/msdeploy.axd?site=xxxx-dev-app',
      UserName='$xxxx-dev-app',
      Password='***',
      AuthType='Basic'
-setParam:name='IIS Web Application Name',value='xxxx-dev-app'
-enableRule:AppOffline
-enableRule:DoNotDeleteRule
-userAgent:VSTS_b7d1246f-0592-4548-9a3d-da995f3fb94e_release_1_59_59_5