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

EJS模板导航栏navbar-brand的ico图片404不显示如何解决

问题核心原因

你遇到的404问题本质是服务端渲染场景下,静态资源访问路径和本地文件相对路径的逻辑差异,和EJS模板本身的语法无关,是Node.js服务的静态资源托管规则导致的:

  • 你最初写的../../static/images/icona.ico是navbar.ejs文件在本地项目目录中相对于图片的路径,仅适用于本地文件系统的路径解析。但EJS是服务端渲染模板,渲染完成的HTML会作为HTTP响应返回给浏览器,浏览器请求图片时是基于你的站点根URL来解析路径,不会识别EJS源文件的存放位置。
  • 从你给出的项目目录判断,你的Node.js服务(一般为Express或同类框架)已经把static目录配置为了静态资源托管根目录,对应的配置代码通常为app.use(express.static('static'))。配置完成后,static目录下的所有内容会直接映射到站点的根路径下,因此static/images/icona.ico对应的外网访问路径就是/images/icona.ico,和你最终修改后的路径一致。

补充说明

你提到的「VSCode中无法通过CTRL+点击跳转图片」是正常现象:/images/icona.ico是基于站点根的URL路径,不是本地文件系统的路径,VSCode的文件跳转仅能识别本地文件路径规则,不会读取你服务的静态资源托管配置,因此无法跳转,不影响线上运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 08:36:02