我想将index.html作为默认服务器,因为我使用angular来处理客户端路由。
这是我的应用程序的结构。
这是app / app.js
var express = require('express'),
config = require('./config/config'),
bodyParser = require('body-parser'),
app = express(),
router = express.Router();
require('./config/db')(function(db) {
require('./routes/routes')(app, router, null, db);
app.use(express.static(__dirname, '/'));
app.use(bodyParser.json());
app.use('/', router);
app.listen(config.port);
console.log('Listening on port ' + config.port);
});
./routes/routes.js中唯一的东西是服务器端路由。我真的不确定我做了什么,但是index.html默认情况下会加载,然后angular会照顾其余部分。
我是node / express的新手。
我不断得到的错误是“无法获取/”
感谢任何帮助!
答案 0 :(得分:0)
你应该使用
app.use(express.static(path.resolve('./public')));
关于快速配置
在您的路线中,您需要有一条服务于您的根路径
module.exports = function(app) {
// Root routing
var core = require('/controllers/core');
app.route('/').get(core.index);
};
您的服务器控制器
exports.index = function(req, res) {
res.render('index'); //assuming that you are using some view engine.
};