繁体   English   中英

静态文件无法加载

[英]Static files cannot be loaded nodejs

我已经声明了静态文件(例如CSS和javascript文件)的静态路径。 如果只有一个URL路径,则可以成功检索静态文件,但是当我添加子路径时,将无法访问它们。

资料夹位置

/static/css
/static/js

在HTML中

<link rel="stylesheet/less" href="css/progress.less" type="text/css">

在server.js中

app.use(express.static(__dirname + ""));
app.use(express.static(__dirname + "/static"));
app.use('/static', express.static('/static/'));
app.use(express.static(__dirname));

在单个路径中,例如它们是可访问的

localhost:4000/css/style.css

但是在这样的网址中

localhost:4000/services/construction/css/style.css

这引发一个错误。

您是否尝试过使用app.use(express.static('static'));

首先,一次使用express.static 通过为您的所有静态文件提供多个URL,不要混淆事情。

您说localhost:4000/css/style.css有效,因此请使用使URL起作用的调用:

app.use(express.static(__dirname + "/static"));

然后,将您的HTML更改为始终指向 URL。

 <link rel="stylesheet/less" href="css/progress.less" type="text/css"> 

这是相对路径的URL 它将把所有东西从路径的最后一个/删除,并保留/之前和包括的所有内容。

因此,根据HTML文档的位置,您将为样式表引用不同的URL。

请改用绝对路径 /开头的URL:

href="/css/progress.less"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM