You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

System.UnauthorizedAccessException:无法写入wwwroot图片目录权限问题排查

解决ASP.NET Core文件保存至wwwroot目录的权限拒绝问题

首要代码错误:路径拼接顺序颠倒

你的代码里Path.Combine的参数顺序完全搞反了,该方法要求先传入目录路径,再传入文件名,但你写的是:

var filePath = Path.Combine(fileName, productPath);

这会生成类似xxx-guid.jpg\wwwroot\Images\Product的错误路径,系统会尝试把文件写到一个以文件名命名的目录下——这个目录根本不存在,就算尝试创建也会触发权限类异常。

修正后的正确写法:

var filePath = Path.Combine(productPath, fileName);

权限排查补充点(即使已手动配置权限)

  • 检查应用池身份权限:如果用IIS部署,确保应用池对应的身份(比如IIS AppPool\你的应用池名称)拥有wwwroot\Images\Product目录的读写权限,不要只给当前登录用户配置权限。
  • 确认目标目录存在:先手动创建wwwroot\Images\Product目录,避免因父目录不存在导致的创建失败(异常提示权限,但路径错误也可能触发类似提示)。
  • 取消目录只读属性:右键目标目录→属性→取消勾选「只读」选项,应用到所有子文件和目录。
  • 排除杀毒软件拦截:Windows Defender或第三方杀毒软件可能会拦截ASP.NET Core进程写入目录,暂时关闭防护后测试。

内容的提问来源于stack exchange,提问作者Ashwin Gholkar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 12:22:07