From a37fba552422d9ff9cb342afd55f21632ba3b9dc Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Fri, 12 Oct 2012 08:11:49 -0400 Subject: [PATCH] try force-ssl again --- lib/server/index.js | 12 ++++++++++++ src/server/index.coffee | 12 +++++++----- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/lib/server/index.js b/lib/server/index.js index 6a0a1c6bea..772c033e09 100644 --- a/lib/server/index.js +++ b/lib/server/index.js @@ -36,6 +36,18 @@ server = http.createServer(expressApp); module.exports = server; +Set(before(other(routes, as(early(as(possible)))))); + +if (process.env.NODE_ENV === 'production') { + expressApp.get('*', function(req, res, next) { + if (req.headers['x-forwarded-proto'] !== 'https') { + return res.redirect('https://' + req.headers.host + req.url); + } else { + return next(); + } + }); +} + derby.use(require('racer-db-mongo')); store = derby.createStore({ diff --git a/src/server/index.coffee b/src/server/index.coffee index a0574706fd..a109bcefb2 100644 --- a/src/server/index.coffee +++ b/src/server/index.coffee @@ -24,11 +24,13 @@ server = http.createServer expressApp module.exports = server # Force SSL -# Set before other routes, as early as possible -# if process.env.NODE_ENV=='production' -# expressApp.all '*', (req, res, next) -> -# if req.headers['x-forwarded-proto']!='https' -# res.redirect('https://'+req.headers.host+req.url) +Set before other routes, as early as possible +if process.env.NODE_ENV=='production' + expressApp.get '*', (req, res, next) -> + if req.headers['x-forwarded-proto']!='https' + res.redirect('https://'+req.headers.host+req.url) + else + next() derby.use(require 'racer-db-mongo') store = derby.createStore