我正在使用 Express 提供 404 页面:
server.use(function(req, res, next) {
res.status(404).sendFile('404.html', { root: __dirname + BASE })
})
404.html
位于网站的根目录中,如果我尝试打开根目录中不存在的页面,一切都会完美运行
(http://mywebsite.com/asd
)。
问题是当我尝试打开其他文件夹 ( http://mywebsite.com/asd/asd
) 内的页面时。我的 css
的路径和js
不被尊重:
<link href="dist/bundle.min.css" rel="stylesheet">
如何解决这个与路径相关的问题?使用 sendFile
提供页面是否安全?在生产服务器上?
最佳答案
我相信您的 href
链接前面需要一个正斜杠:
<link href="/dist/bundle.min.css" rel="stylesheet">
由于 /
被解释为主机名的根:
dist/bundle.min.css
是相对于路径的。/dist/bundle.min.css
相对于根目录。
编辑:对。如果指定基数,则根将设置为该基数。 :)
关于node.js - Express 提供的 404 页面的相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37011136/