2012-09-20 58 views
0

我使用node.js + express来提供静态文件(CSS + JS)。用户:此时为NodeJS + Express:为不同的URL提供静态文件

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

在主templeate layout.jade我加载静态文件

link(href='css/bootstrap.css', rel='stylesheet') 

一切正常,与像/你好,/写/页静态目录配置。但是当我得到像/ bob/505b6833d3835d3705000001 /编辑的页面时,找不到静态文件。 Firebug显示节点为静态生成相同的路径,但样式不适用于页面。为什么?提前致谢!

+1

该链接应该是/css/bootstrap.css吗? (通知前斜线) –

+0

它的工作,谢谢。请回复完整答案 - 我会将您的答复标记为最佳,并且您可以获得一些声望点) – f1nn

回答

2

您应该使用预斜杠链接。

link(href='/css/bootstrap.css', rel='stylesheet') 

这应该照顾它。

+0

但是,我发现我的问题没有解决。我注意到这行:app.get('/:user /:postid',ensureAuthenticated,function(req,res){...}与静态文件路径冲突。我必须尝试将它与主代码分开... – f1nn

+0

你想让路线先运行吗? –

+0

那么,你是什么意思'第一'?我认为路线开始于请求时,静态css渲染页面是节点的最后一步 – f1nn