.NET 7 Linux应用AzureFiles映射失败问题求助
解决Linux Azure App Service上.NET7应用Azure Files挂载不生效问题
匹配挂载路径与实际写入路径
应用内容根路径为/home/site/wwwroot,若代码中使用相对路径uploaded,实际写入路径是/home/site/wwwroot/uploaded。存储挂载配置的目标路径必须填写该绝对路径,不要使用/uploaded、wwwroot/uploaded或带mounts前缀的路径。检查存储挂载权限与配置
- 确保Azure Files共享已创建,且App Service使用的身份(系统/用户分配MSI)拥有该共享的「存储文件数据参与者」权限。
- 在App Service「配置>路径映射」中验证:
- 类型选择「Azure Files」
- 存储账户、文件共享名称无误
- 目标路径严格设为
/home/site/wwwroot/uploaded - 挂载选项留空使用默认值
修正代码路径逻辑
在.NET代码中使用绝对路径而非相对路径,例如:var uploadPath = Path.Combine(Directory.GetCurrentDirectory(), "uploaded");可在应用启动时输出该路径日志,确认与挂载路径完全一致。
禁用冲突配置项
关闭WEBSITES_ENABLE_APP_SERVICE_STORAGE配置,该选项启用的临时存储会干扰Azure Files挂载,尤其当目标路径在/home/site目录下时。验证挂载状态
重启App Service后,通过Kudu的SSH终端执行df -h,确认/home/site/wwwroot/uploaded已挂载到Azure Files共享。手动在该路径写入测试文件,检查Azure存储账户中是否同步显示。
内容的提问来源于stack exchange,提问作者Sim_on
相关产品推荐
相关产品推荐

