如何在express.js中引用布局图像,以便可以从嵌套目录中找到它们?

时间:2013-02-06 19:17:49

标签: node.js express pug ejs

我有一个当前正在使用ejs的express.js应用程序(使用jade用于新项目),我正试图以干净和适当的方式解决问题。

我有一个带有页眉和页脚的layout.ejs文件。到目前为止,我的大多数网站都是一层深http://innovationbound.com/about或/ services或/ amy等等....

我开始在http://innovationbound.com/courses/course-name创建在线课程,我遇到的问题是这些课程页面不能以相同的方式引用图像。例如<img src="images/linknedin.png" alt="LinkedIn Icon">

从课程名称页面尝试<img src="courses/images/LinkedIn.png" alt="LinkedIn Icon">,显然无法抓取图像。

是否有明确的设置,或者我缺少的明显的设置?我希望我不必使用绝对的网址,这只会使本地机器的开发变得疯狂。

2 个答案:

答案 0 :(得分:5)

只使用站点根目录相对路径。例如<img src="/images/linknedin.png" alt="LinkedIn Icon">。请注意/会有所不同。

  

有三种类型的链接路径:

     

来自Adobe

答案 1 :(得分:0)

你可能会考虑它,但你可以使用“../images/link(n?)edin.png”。但是,我建议使用绝对路径,因为图像应存储在/ public(通常是玉石设置)中,并且您的路径深度可能会因路线规则而异。

作为提示,如果您丢失了图像的相对路径,请右键单击损坏的图像,然后在Web浏览器的属性中查看URL。它会给你一个图像所在的提示。