【发布时间】:2016-11-07 23:13:54
【问题描述】:
我想这个标题可能会令人困惑。我不知道该怎么说,但说我有一个目录如下:
/
app.js
/static
/styles
main.css
/views
index.html
/files
1.html
2.html
如果我提供 1.html 并在其中包含,我有一个 css 文件作为
<link rel="stylesheet" type="text/css" href="static/styles/main.css">
这不会加载 css 文件。它在我假设的索引页面上运行良好,因为它直接位于视图文件夹中。因为我正在尝试访问文件夹中的某些内容,所以它不起作用。有人能指出我正确的方向吗?
还要注意我已经设置了
server.set('views', __dirname + '/views')
server.use('/static', express.static(__dirname + '/static'));
【问题讨论】:
-
对于固定位置的资源,使用绝对路径(以
/开头的路径)在网页中引用它们。然后,无论从何处提供主机网页,您都可以以相同的方式访问它们。所以,既然您已经在使用express.static(__dirname + '/static'),那么只需使用<link rel="stylesheet" type="text/css" href="/styles/main.css">。//static部分已经在您的express.static()处理程序中。
标签: node.js express routing static-files