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

ASP.NET Core中cshtml无法正常显示wwwroot下图片如何解决

问题原因及解决方案

1. 核心路径错误修正

ASP.NET Core中wwwroot是静态资源的默认Web根目录,客户端发起资源请求时不需要在路径中携带wwwroot目录名。你当前使用的相对路径写法会随页面路由动态变化,当页面路由为/dashboard时,路径解析结果与实际静态资源路径不匹配。
正确的img标签写法如下:

<img src="/images/images.jpg" width="30" height="30" alt="">

以/开头的绝对路径会直接从Web根目录(也就是wwwroot目录)开始匹配资源,不受当前页面路由影响。

2. 静态资源中间件校验

确认你的项目启动配置文件(Program.cs或.NET 5及更早版本的Startup.cs)中已启用静态资源中间件,这是加载wwwroot下资源的前提:

// Program.cs中需存在该行,且顺序要在路由匹配、授权中间件之前
app.UseStaticFiles();

该配置默认创建项目时会自动生成,若手动删除需补充。

3. 辅助排查方案

如果修改路径后仍无法加载,可按以下步骤定位问题:

  • 打开浏览器开发者工具(F12),切换到「网络」标签页,刷新页面查看对应图片请求的状态码:
    • 若返回404:检查wwwroot目录下是否真实存在images/images.jpg文件,若部署在Linux环境需注意路径大小写敏感问题
    • 若返回401/403:检查是否为静态资源配置了授权规则,默认静态资源不会走控制器的Session校验逻辑
  • 直接在浏览器地址栏输入https://你的域名/images/images.jpg,确认是否可以直接访问到图片

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.12 05:15:03