expressjs静态文件没有被提供

我困在一个令人沮丧的问题。

我的静态文件不是由快捷js服务,而是我的全球捕获所有获取处理程序正在打。

我的目录结构:

node/apps/web/app.js -------------/public/ --------------------/css/site.css --------------------/js/ --------------------/img/ 

我的开发configuration

 app.configure('development',function() { console.log(__dirname); // for development, serve static files via express app.use(express.static(__dirname + '/public')); app.use(express.errorHandler({dumpExceptions: true, showStack: true})); }); //...later app.get('*',route.r404); 

请求:

http://192.168.1.101/css/site.css

无法触发正确的CSS文件。

编辑添加:

看起来像是与默认捕捉所有路线有关。 如果我把它评论出来,它会正确地解决

如果app.use(app.router)在app.use(express.static(…))行之上,那么路由将胜过静态。 你的app.get('*',…)行是路由的一部分。

请参阅Node.js / Express.js – app.router如何工作? 获取更多信息。

  var express = require("D:/node/express/modules/express"); var path=require("D:/node/express/modules/path"); var app = new express(); app.get('/',function(req,res){ res.sendFile(path.join(__dirname,'/index.html')); }); app.get('/about',function(req,res){ res.sendFile(path.join(__dirname,'/about.html')); }); app.listen(1000); 

这里var expressvar path是模块path,你可以使用这个简单的代码来提供静态文件。