mirror of
https://github.com/sstent/node.git
synced 2026-01-26 23:22:28 +00:00
updated app
This commit is contained in:
53
node_modules/derby-examples/widgets/lib/server/index.js
generated
vendored
Normal file
53
node_modules/derby-examples/widgets/lib/server/index.js
generated
vendored
Normal file
@@ -0,0 +1,53 @@
|
||||
var http = require('http')
|
||||
, path = require('path')
|
||||
, express = require('express')
|
||||
, gzippo = require('gzippo')
|
||||
, derby = require('derby')
|
||||
, app = require('../app')
|
||||
, serverError = require('./serverError')
|
||||
|
||||
|
||||
// SERVER CONFIGURATION //
|
||||
|
||||
var ONE_YEAR = 1000 * 60 * 60 * 24 * 365
|
||||
, root = path.dirname(path.dirname(__dirname))
|
||||
, publicPath = path.join(root, 'public')
|
||||
, expressApp, server, store
|
||||
|
||||
;(expressApp = express())
|
||||
.use(express.favicon())
|
||||
// Gzip static files and serve from memory
|
||||
.use(gzippo.staticGzip(publicPath, {maxAge: ONE_YEAR}))
|
||||
|
||||
// Gzip dynamically rendered content
|
||||
.use(express.compress())
|
||||
|
||||
// Uncomment to add form data parsing support
|
||||
// .use(express.bodyParser())
|
||||
// .use(express.methodOverride())
|
||||
|
||||
// Derby session middleware creates req.model and subscribes to _session
|
||||
// .use(express.cookieParser('secret_sauce'))
|
||||
// .use(express.session({
|
||||
// cookie: {maxAge: ONE_YEAR}
|
||||
// }))
|
||||
// .use(app.session())
|
||||
|
||||
// The router method creates an express middleware from the app's routes
|
||||
.use(app.router())
|
||||
.use(expressApp.router)
|
||||
.use(serverError(root))
|
||||
|
||||
module.exports = server = http.createServer(expressApp)
|
||||
|
||||
|
||||
// SERVER ONLY ROUTES //
|
||||
|
||||
expressApp.all('*', function(req) {
|
||||
throw '404: ' + req.url
|
||||
})
|
||||
|
||||
|
||||
// STORE SETUP //
|
||||
|
||||
store = app.createStore({listen: server})
|
||||
21
node_modules/derby-examples/widgets/lib/server/serverError.js
generated
vendored
Normal file
21
node_modules/derby-examples/widgets/lib/server/serverError.js
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
var derby = require('derby')
|
||||
, isProduction = derby.util.isProduction
|
||||
|
||||
module.exports = function(root) {
|
||||
var staticPages = derby.createStatic(root)
|
||||
|
||||
return function(err, req, res, next) {
|
||||
if (err == null) return next()
|
||||
|
||||
console.log(err.stack ? err.stack : err)
|
||||
|
||||
// Customize error handling here
|
||||
var message = err.message || err.toString()
|
||||
, status = parseInt(message)
|
||||
if (status === 404) {
|
||||
staticPages.render('404', res, {url: req.url}, 404)
|
||||
} else {
|
||||
res.send( ((status >= 400) && (status < 600)) ? status : 500)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user