У меня есть приложение nodejs, и я использую expressjs. Я определил мой статический каталог, но когда я обращаюсь к нему, он не загружается. Мой экспресс-конфиг:
var app = express.createServer().listen(8001);
app.configure(function(){
app.use(express.methodOverride());
app.use(express.bodyParser());
app.use(app.router);
app.use('/public', express.static(__dirname + '/public'));
app.use(express.cookieParser());
app.use(express.session({ secret: "appsession" }));
app.use(express.errorHandler({showStack: true, dumpExceptions: true}));
app.set('views', __dirname + '/views');
app.set('view engine', 'hbs');
});
Внутри моего каталога /public
есть 3 папки: css, js и img. Внутри CSS у меня есть style.css. Когда я пытаюсь получить к нему доступ напрямую через http://localhost:8001/public/css/style.css, я получаю: Cannot GET /public/css/style.css
Есть идеи, что я могу делать не так?
Спасибо!
EDIT:
Похоже, это связано с настройкой моих маршрутов. Я делаю это так:
var routes = require('./routes')(db);
pp.get('/', routes.index);
Тогда в моем файле index.js
у меня есть:
module.exports = function(db) {
return {
index: function(req, res, next) {
res.render('index');
}
}
}
У меня включена обработка ошибок, но когда я использую маршрутизацию таким образом, она не использует экспресс-обработку ошибок, однако, если я ее устраняю, она делает.