[英]Node.js static folder reference not loading CSS
我目前正在使用Node.js开发一个网站。 我只是设置了404页面,当我访问诸如mywebsite.com/404
页面或不存在的其他页面时,它工作正常,但是如果我尝试访问诸如mywebsite.com/foo/bar
,不存在,因此不会加载CSS
和JS
等资产。 在服务器上,我正在使用:
app.use('/assets', express.static(__dirname + '/public'));
并且,在页面本身上:
<link href="/assets/css/bootstrap.min.css" rel="stylesheet">
我知道可以在HTML资产的前面添加../
,但这是不理想的。 有什么帮助吗?
我的文件夹结构如下:
Project Folder
|-App.js
|-views
|-404.ejs
|-home.ejs
|-public
|-CSS
|-Bootstrap.min.css
|-js
|-img
|-font
在404页(或每页!)上使用基本元素,它将始终使用您指定的基本路径来请求资产。
例如,在</head>
标记之前添加<base href="http://example.com" /
>将请求以http://example.com
作为路径的每个资产,因此在您的情况下,而不是/foo/bar/assets/css/bootstrap.min.css
,它将请求/assets/css/bootstrap.min.css
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.