node.js express.js路由斜线css

2 html node.js express

当我写localhost/profil时,css可以工作.但是当我写localhost/profil /时,css不起作用.

app.use(express.static(__dirname+'/public'));
app.get('/profil',[checkCo],require('./routes/profil.js'));
Run Code Online (Sandbox Code Playgroud)

为什么?

谢谢!

编辑:

这是因为它认为profil /是一个文件夹,所以我怎么能解决这个问题呢?

jli*_*jli 6

您可能需要在HTML中使用绝对路径.

例如,而不是

<link rel="stylesheet" href="style.css">
Run Code Online (Sandbox Code Playgroud)

你需要做的

<link rel="stylesheet" href="/style.css">
Run Code Online (Sandbox Code Playgroud)

在第一个示例中,浏览器尝试访问style.css用户导航到的当前目录.因此,如果用户被导航到/profil/,则会尝试从中加载css /profil/style.css.在第二个示例中,浏览器被告知/style.css无论如何都要加载css .