从Visual Studio部署ASP.NET 4.8至Azure App Service遇连接终止错误
解决ASP.NET 4.8 Outlook加载项部署Azure App Service时Web Deploy连接终止问题
问题概述
部署ASP.NET 4.8 Web应用(Outlook加载项)到Azure App Service时,出现以下错误:
- 发布提示:
Build failed. Check the Output window for more details.,关联临时文件路径为C:\Users\SomeUser\AppData\Local\Temp\tmp1E71.tmp - 输出窗口核心错误:
Web deployment task failed. (Web Deploy experienced a connection problem with the server and had to terminate the connection. Contact your server administrator if the problem persists.) - 报错位置:项目的
C:\Program Files\Microsoft Visual Studio\2022\Professional\MSBuild\Microsoft\VisualStudio\v17.0\Web\Microsoft.Web.Publishing.targets第4455行 - 尝试过官方部署文档方案,以及Stack Overflow提到的勾选“Run from package file”方案,但在发布设置中找不到该选项
可行解决方案
1. 手动启用Zip部署(替代缺失的复选框)
ASP.NET 4.8项目的Visual Studio发布界面默认可能不显示“Run from package”选项,可通过以下步骤手动配置:
- 在项目根目录创建
.deployment文件,写入内容:[config] SCM_DO_BUILD_DURING_DEPLOYMENT = false - 将项目打包为ZIP文件:右键项目→选择“发布”→目标选“文件夹”,生成发布目录后压缩为ZIP
- 登录Azure门户,进入目标App Service的“部署中心”,选择“Zip部署”上传生成的ZIP包完成部署
2. 排查修复Web Deploy连接问题
若偏好使用Web Deploy方式,可尝试以下操作:
- 检查Azure App Service的“配置”→“常规设置”,确认Web Deploy处于启用状态
- 在Visual Studio发布设置的“连接”选项卡,重新从Azure门户下载并导入
.publishsettings配置文件 - 确认本地网络未拦截Web Deploy默认端口8172,可切换网络(如手机热点)测试
- 清理Visual Studio发布缓存:删除
C:\Users\<你的用户名>\AppData\Local\Temp下的临时发布文件(含报错的tmp1E71.tmp),重启Visual Studio后重新发布
3. 修改发布配置文件启用包部署
直接编辑项目的发布配置文件(.pubxml)添加参数:
- 打开项目
Properties\PublishProfiles下的对应发布配置文件,在<PropertyGroup>节点中添加:<DeployAsPackage>true</DeployAsPackage> <WebPublishMethod>Package</WebPublishMethod> <PackageAsSingleFile>true</PackageAsSingleFile> - 保存后重新发布,Visual Studio会自动以Zip包方式部署,规避Web Deploy连接中断问题
内容的提问来源于stack exchange,提问作者Pearl
相关产品推荐
相关产品推荐

