【Azure 应用服务】VS2019发布应用到正在运行的App Service时失败问题的解决
问题描述
在VS 2019中配置号App Service的Publish Profile后,发布应用出现错误。根据VS 2019中的输出消息可知有文件正在运行中,无法被替换,所以发布失败。

问题解决
根据消息提示 “The process cannot access the file because it it being used by anther process”, 因为当前App Service正在远行,所以需要先停止App Service,然后部署,最后启动应用。具体步骤为:
- 在Azrue Portal 上点一下“停止”
- 开始部署
- 部署完成后在Azrue Portal 上再点一下“开始”
如果在部署代码时候,感觉以上办法有些冗余。
方式一:可以在Project的根目录中(目标路径时是App Service中的wwwroot目录) 添加 App_Offline.htm 文件。
为什么这有帮助?
因为 ASP.NET 和 ASP.NET Core 都知道如何监听这个文件的出现,并自行关闭。 这会导致卸载所有资源,这通常会解锁所有文件。
当然,缺点是您的站点在部署期间不可用。
方式二:修改App Service的配置参数,启用 MSDEPLOY_RENAME_LOCKED_FILES=1 的配置。
如果在部署期间无法复制 DLL,这会导致 msdeploy 尝试重命名 DLL。 这通常有效,因为即使加载了 DLL,它们通常仍然可以重命名。 它使用 .delete 扩展名重命名它们,然后在下一轮清理。

问题参考
Dealing with locked files during deployment: https://github.com/projectkudu/kudu/wiki/Dealing-with-locked-files-during-deployment or https://www.cnblogs.com/lulight/articles/15207168.html
【Azure 应用服务】VS2019发布应用到正在运行的App Service时失败问题的解决的更多相关文章
- 【Azure 应用服务】Python flask 应用部署在Aure App Service 遇见的 3 个问题
在App Service(Windows)中部署Flask应用时的注意事项: ● 添加Python扩展插件,Python 3.6.4 x64: ●● 配置 FastCGI 处理程序,添加Web.con ...
- 【Azure 应用服务】Python flask 应用部署在Aure App Service中作为一个子项目时,解决遇见的404 Not Found问题
问题描述 在成功的部署Python flask应用到App Service (Windows)后,如果需要把当前项目(如:hiflask)作为一个子项目(子站点),把web.config文件从wwwr ...
- Python运行Google App Engineer时出现的UnicodeDecodeError错误解决方案
#Python运行Google App Engineer时出现的UnicodeDecodeError错误解决方案 ##问题描述 使用Python2.7.x运行GAE时有时会报这个错误 ```py ...
- 【应用服务 App Service】NodeJS +Egg 发布到App Service时遇见 [ERR_SYSTEM_ERROR]: A system error occurred:uv_os_get_passwd returned ENOENT(no such file or directory)
问题情形 本地NodeJS应用使用Egg脚手架构建,本地运行测试完全没有问题,发布后App Service后不能运行.通过登录到kudu后(https://<your web site>. ...
- 【转】运行java -version命令时出现错误及解决
转载地址:http://blog.sina.com.cn/s/blog_50f21fed01012sf2.html 按照上一篇的步骤配置JAVA_HOME.CLASSPATH和Path三个变量 ...
- 如何将Azure DevOps中的代码发布到Azure App Service中
标题:如何将Azure DevOps中的代码发布到Azure App Service中 作者:Lamond Lu 背景 最近做了几个项目一直在用Azure DevOps和Azure App Servi ...
- 【Azure 应用服务】探索在Azure上设置禁止任何人访问App Service的默认域名(Default URL)
问题描述 总所周知,Azure App Service服务会默认提供一个 ***.chinacloudsites.cn为后缀的域名,但是该域名由上海蓝云网络科技有限公司备案,仅用于向其客户提供 Azu ...
- 【Azure 应用服务】部署Jar到App Service for Linux,因启动命令路径配置错误而引起:( Application Error 问题
问题描述 App Service for Linux 资源创建完成后,通过FTP方式把 .jar包(logdemo.jar)包上传到 /site/wwwroot/ 文件夹后,在App Service的 ...
- 【Azure App Service For Container】创建ASP.NET Core Blazor项目并打包为Linux镜像发布到Azure应用服务
欢迎使用 Blazor!Blazor 是一个使用 .NET 生成交互式客户端 Web UI 的框架: 使用 C# 代替 JavaScript 来创建信息丰富的交互式 UI. 共享使用 .NET 编写的 ...
- 【Azure 应用服务】App Service 运行状况健康检查功能简介 (Health check)
通过Azure App Service门户,启用Health Check来监视应用服务的实例,当发现其中一个实例处于不健康(unhealthy)状态时,通过重新路由(即把有问题的实例从负载均衡器中移除 ...
随机推荐
- Mysql 安装文件下载
今天上了mysql的官方网站想下载mysql数据库 https://www.mysql.com 注册之后发现 出口许可证的问题 这里fxxk 一下川建国的老婆和女儿 感觉比较抑郁 然后就去百度了下 发 ...
- redis 6源码解析之 sds
redis使用sds(simple dynamic string)实现了字符串的存储.sds实际上就是TLV格式的数据结构.其数据结构主要分为如下5种,主要分为首部和数据部分,首部给出了type和le ...
- 物联网浏览器(IoTBrowser)-顶尖OS2电子秤协议实现
本教程基于 物联网浏览器(IoTBrowser)-Web串口自定义开发 ,详细的过程可以翻看之前的文章. 本篇以实现顶尖OS2系列电子秤协议对接,并集成到IoTBrowser平台.由于没有找到OS2 ...
- vue3异步组件按需加载和vue2异步组件的按需加载
vue3 按需加载组件 子组件.vue <template> <div> <p>这个组件按需加载</p> <h1>这个组件显示</h1 ...
- vue中v-model修饰符的使用和组件使用v-model
1.lazy 修饰器 lazy修饰器在input框中的表现效果是: 当你失去焦点后值才会跟新. 它的跟新时机是失去焦点后 这个修饰器在项目中运用的场景较少 <template> <d ...
- elementui出现展开后子菜单宽度多出1px问题
添加 就可以解决了 .el-menu { border-right-width: 0; } <template> <div class="compen-left-men&q ...
- 【k哥爬虫普法】非法入侵计算机信息系统,获取1500万余条个人信息!
我国目前并未出台专门针对网络爬虫技术的法律规范,但在司法实践中,相关判决已屡见不鲜,K 哥特设了"K哥爬虫普法"专栏,本栏目通过对真实案例的分析,旨在提高广大爬虫工程师的法律意识, ...
- 【译】PEP-3129 类装饰器
PEP原文 : https://www.python.org/dev/peps/pep-3129 PEP标题: Class Decorators PEP作者: Collin Winter 创建日期: ...
- 从零开始配置 vim(7)——自动命令
这篇我们来谈论vim一个相当重要的东西--自动命令. 从编程的角度来看,自动命令有点类似于事件响应,或者回调函数之类.当外部发生某些事件的时候,自动执行事先定义好的一组命令. 定义一个自动命令的格式如 ...
- Apache Typecho框架启用地址重写
地址重写有利于SEO优化,开启地址重写可以去掉Typecho框架中的index.php后缀,该后缀如下. 第一步,进到apache配置文件目录下cat /etc/httpd/conf/httpd.co ...