-
Notifications
You must be signed in to change notification settings - Fork 44
/
Copy pathapp.js
88 lines (65 loc) · 1.82 KB
/
app.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
'use strict';
//dependencies
var config = require('./config'),
express = require('express'),
session = require('express-session'),
bodyParser = require('body-parser'),
multer = require('multer'),
morgan = require('morgan'),
compression = require('compression'),
methodOverride = require('method-override'),
cookieParser = require('cookie-parser'),
favicon = require('serve-favicon'),
serveStatic = require('serve-static'),
errorhandler = require('errorhandler'),
RedisStore = require('connect-redis')(session),
http = require('http');
var app = express();
//keep reference to config
app.config = config;
//setup the web server
app.server = http.createServer(app);
//setup the session store
app.sessionStore = new RedisStore({ host: 'localhost', port: 6379 });
//redis cache
var redis = require('redis'),
client = redis.createClient();
client.on('error',function(err){
console.log('redis-err:'+err);
});
app.redis=client;
//settings
app.disable('x-powered-by');
app.set('port', config.port);
app.set('strict routing', true);
app.set('project-name', config.projectName);
app.set('company-name', config.companyName);
app.set('system-email', config.systemEmail);
app.set('crypto-key', config.cryptoKey);
//middleware
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(morgan('dev'));
app.use(compression());
app.use(methodOverride());
app.use(cookieParser());
app.use(session({
secret: config.cryptoKey,
maxAge: 2 * 3600000,
store: app.sessionStore,
saveUninitialized: true,
resave: true
}));
//route requests
require('./routes')(app);
//config express in dev environment
var env = process.env.NODE_ENV || 'development';
if ('development' == env) {
app.use(errorhandler());
}
//listen up
app.server.listen(app.get('port'), function () {
//and... we're live
});