【Azure 应用服务】VS2019发布应用到正在运行的App Service时失败问题的解决
2021-08-30 17:56
1331 查看
问题描述
在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 应用程序见解】在Azure门户中,创建App Service(应用服务)时,无法一起创建Application Insights的问题
- 【Azure 应用服务】遇见“无法创建hybrid connection for App Service”的解决办法
- 【Azure 应用服务】App Service .NET Core项目在Program.cs中自定义添加的logger.LogInformation,部署到App Service上后日志不显示Log Stream中的问题
- 【Azure App Service For Container】创建ASP.NET Core Blazor项目并打包为Linux镜像发布到Azure应用服务
- 【Azure 应用服务】FTP 部署 Vue 生成的静态文件至 Linux App Service 后,访问App Service URL依旧显示Azure默认页面问题
- 【Visual Studio】VS发布应用未能创建默认证书的问题解决方法
- 1分钟解决VS每次运行都显示“正在还原nuget程序包”问题
- 【应用服务 App Service】在Azure Web App的部署文件中,是否可以限制某些文件无法被访问?(如json)
- 【Azure 应用服务】在Azure App Service for Windows 中部署Java/NodeJS/Python项目时,web.config的配置模板内容
- 【Azure 应用服务】App Service服务无法启动,打开Kudu站点,App Service Editor 页面均抛出:The service is unavailable
- 解决自动更新因为EXE文件正在运行而失败的问题
- 【Azure 应用服务】如何定期自动重启 Azure App Service Plan(应用服务计划)
- 【Azure 应用服务】App Service 通过配置web.config来添加请求返回的响应头(Response Header)
- 被事务代理的spring service 不能使用注解方式发布dubbo服务的问题解决
- 连接AnalysisServices时失败并且提示“请确保 "SQL Browser" 服务正在运行”的解决办法
- ios9定位服务的app进入后台三分钟收不到经纬度,应用被挂起问题及解决方式
- 【Azure 应用服务】App Service 配置 Application Settings 访问Storage Account得到 could not be resolved: '*.file.core.windows.net'的报错。没有解析成对应中国区 Storage Account地址 *.file.core.chinacloudapi.cn
- 【Azure 应用服务】App Service中抓取 Web Job 的 DUMP 办法
- 【Azure 应用服务】App Service中,为Java应用配置自定义错误页面,禁用DELETE, PUT方法
- 学习 VS6.0 Win32 Application 创建服务程序解决实际项目问题之:SERVICE_STATUS