Server task
Spins up express server. Simple.
var express = require('express');
var http = require('http');
var morgan = require('morgan');
var config = require('../config');
config.merge({
server: {
root: 'build',
index: 'index.html',
port: 8181,
errorHandler: function () {
}
}
});
exports.task = function task() {
var opts = config.load('server');
var server = express();
server.use(morgan('dev'));
// use express static middleware
server.use(express.static(opts.root));
// Ensure that all routes are routed to index.html (spa)
server.all('/*', function (req, res) {
res.sendFile(opts.index, {root: opts.root});
});
http.createServer(server)
.on('error', opts.errorHandler)
.listen(opts.port)
;
};