如何手动删除Azure App Service中的旧文件与文件夹?
解决Azure App Service中Angular部署文件未替换的问题
方法一:通过Kudu工具手动删除指定文件夹或所有文件
Kudu是Azure App Service自带的文件管理工具,可直接操作网站文件:
- 打开Azure门户,找到你的目标App Service实例
- 在左侧导航栏的开发工具分类下,点击高级工具,再点击页面中的Go按钮,进入Kudu管理界面
- 在Kudu顶部导航栏选择Debug console,下拉菜单中选CMD或PowerShell(推荐CMD)
- 进入网站部署根目录:输入
cd site\wwwroot并回车- 删除
media文件夹:执行命令rmdir /s /q media - 删除所有文件及文件夹:先执行
del /f /s /q *.*删除所有文件,再执行for /d %i in (*) do rmdir /s /q %i删除所有子文件夹
- 删除
- 操作完成后重新部署Angular应用即可
方法二:配置部署流程,自动清理旧文件
不想每次手动删除的话,可调整部署设置实现自动清理:
- 若使用Azure DevOps/GitHub Actions部署:在部署任务中添加清理逻辑,比如通过Azure CLI任务执行命令:
az webapp deploy --name <你的App Service名称> --resource-group <资源组名称> --src-path <部署包路径> --clean true - 若使用本地Git部署:在项目根目录创建
.deployment文件,写入以下内容:
后续每次部署前会自动清理旧文件[config] SCM_DO_BUILD_DURING_DEPLOYMENT = true CLEAN_LOCAL_REPOSITORY = true
额外优化提示
- Angular构建时使用
ng build --configuration production(Angular 12+版本),生成的资源文件带哈希值,能避免浏览器缓存旧资源导致的加载异常 - 部署后若仍有静态资源加载问题,可在App Service的配置→常规设置中,开启静态内容压缩,并将默认文档设置为
index.html
内容的提问来源于stack exchange,提问作者Harsh Patel
相关产品推荐
相关产品推荐

