Last active
June 3, 2018 06:40
-
-
Save battlejj/2adffe5817d83dfa4720 to your computer and use it in GitHub Desktop.
express-force-ssl config with Express4 generator app
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var express = require('express'); | |
var path = require('path'); | |
var favicon = require('serve-favicon'); | |
var logger = require('morgan'); | |
var cookieParser = require('cookie-parser'); | |
var bodyParser = require('body-parser'); | |
var forceSSL = require('express-force-ssl'); | |
var routes = require('./routes/index'); | |
var users = require('./routes/users'); | |
var app = express(); | |
//express-force-ssl express config | |
app.set('httpsPort', 3001); | |
app.use(forceSSL); | |
// view engine setup | |
app.set('views', path.join(__dirname, 'views')); | |
app.set('view engine', 'ejs'); | |
// uncomment after placing your favicon in /public | |
//app.use(favicon(__dirname + '/public/favicon.ico')); | |
app.use(logger('dev')); | |
app.use(bodyParser.json()); | |
app.use(bodyParser.urlencoded({ extended: false })); | |
app.use(cookieParser()); | |
app.use(express.static(path.join(__dirname, 'public'))); | |
app.use('/', routes); | |
app.use('/users', users); | |
// catch 404 and forward to error handler | |
app.use(function(req, res, next) { | |
var err = new Error('Not Found'); | |
err.status = 404; | |
next(err); | |
}); | |
// error handlers | |
// development error handler | |
// will print stacktrace | |
if (app.get('env') === 'development') { | |
app.use(function(err, req, res, next) { | |
res.status(err.status || 500); | |
res.render('error', { | |
message: err.message, | |
error: err | |
}); | |
}); | |
} | |
// production error handler | |
// no stacktraces leaked to user | |
app.use(function(err, req, res, next) { | |
res.status(err.status || 500); | |
res.render('error', { | |
message: err.message, | |
error: {} | |
}); | |
}); | |
module.exports = app; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env node | |
var debug = require('debug')('express-test'); | |
var app = require('../app'); | |
var http = require('http'); | |
var https = require('https'); | |
var path = require('path'); | |
var fs = require('fs'); | |
var options = { | |
key: fs.readFileSync(path.resolve(__dirname,'../certs/localhost.key')), | |
cert: fs.readFileSync(path.resolve(__dirname,'../certs/localhost.cert')) | |
}; | |
var server = http.createServer(app); | |
var secureServer = https.createServer(options, app); | |
server.listen(3000); | |
secureServer.listen(3001); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment