发布或部署脚本没有错误,但在部署完成后,导航到网站说:
指定的CGI应用程序遇到错误和服务器 终止了这个过程。
可能的原因是: 我在使用dnx发布命令时没有发生这种情况。 我从之前的控制台日志中验证了此警告是新的。
无法找到文件'D:\ TempPublish \ approot'。请访问:http://go.microsoft.com/fwlink/?LinkId=221672#FileOrFolderNotFound了解详情。 信息:使用ID'8zsdwee ------------ b7a299fe6'连接到远程服务器。 警告:由于规则SkipInvalidSource而跳过源contentPathLib(D:\ TempPublish \ approot)。 找不到文件'D:\ TempPublish \ approot'。请访问:http://go.microsoft.com/fwlink/?LinkId=221672#FileOrFolderNotFound了解详情。
发布命令:
“C:\ Program Files \ dotnet \ dotnet.exe”发布“C:\ Program Files (x86)\ Jenkins \ workspace \ Temp Publish \ Site.Web“--framework net451 --output“D:\ TempPublish” - 配置发布
由于未创建approot文件夹,因此msdeploy命令成功执行但在部署完成后无法正常工作。
MsDeploy命令:
“C:\ Program Files(x86)\ IIS \ Microsoft Web Deploy V3 \ msdeploy.exe” -source:IisApp ='D:\ TempPublish \ wwwroot' -dest:IisApp ='hhhhhhhh',ComputerName ='https://xxxx-zxxx.scm.azurewebsites.net/msdeploy.axd',UserName ='$ xxxxx',Password ='yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy',IncludeAcls ='False' ,进行AuthType = '基本' -verb:sync -enableLink:contentLibExtension
Project.Json - 发布后脚本:
“scripts”:{ “postpublish”:[“dotnet publish-iis --publish-folder%publish:OutputPath% - framework%publish:FullTargetFramework%”]}
这里可能出现什么问题?
感谢您的帮助。
答案 0 :(得分:1)
对我来说,看起来PublishProfile pubxml和/或ps1已从RC1更改为RC2。
我删除了本地PublishProfiles文件夹的内容,从Azure门户重新下载了Web应用程序的发布配置文件,使用Visual Studio中的“发布”向导导入它,并且发布成功。
答案 1 :(得分:0)
好的,经过多次努力,我找到了答案。相信我,看到它后你会感到愚蠢。
问题不是在发布脚本而不是在部署脚本中,而是在寻找错误的路径。
正确命令:
" C:\ Program Files(x86)\ IIS \ Microsoft Web Deploy V3 \ msdeploy.exe" -source:IisApp =' d:\ TempPublish \' -dest:IisApp =' xyztwee__testing',计算机名=' https://xxxx-zzzzz.scm.azurewebsites.net/msdeploy.axd',用户名=' $ xyztwe__testing',密码=' LOL53encrypted7beyond9your4limit5Dont70waste87Time&# 39;,IncludeAcls ='假',=进行AuthType'具有基本' -verb:sync -enableLink:contentLibExtension
注意源路径,来源:IisApp =' D:\ TempPublish \'而不是' D:\ TempPublish \ wwwroot'在已发布文件夹中搜索wwwroot文件夹只提供已发布的文件夹作为源。
希望这可以帮助某人并节省一些时间。