Чтобы запустить защищенный сервер (https), он должен быть создан независимо от незащищенного сервера (http). Они также будут слушать на отдельных портах. Попробуйте что-то вроде этого:
var express = require('express)
, app_insecure = express.createServer()
, app_secure = express.createServer({ key: 'mysecurekey' })
app_insecure.get('/secure-page',function(req, res){
// This is an insecure page, redirect to secure
res.redirect('https://www.mysecuresite.com/secure-page')
})
app_secure.get('/secure-page', function(req,res){
// Now we're on a secure page
})
app_insecure.listen(80)
app_secure.listen(443)
ИЛИ это может быть реализовано как промежуточное ПО маршрута
var redirect_secure = function(req, res, next){
res.redirect('https://mysite.com' + req.url)
}
app_insecure.get('/secure-page',redirect_secure,function(req, res){})
Теперь вам нужно будет только включить ссылку на функцию: redirect_secure () на пути, которые вы хотите перенаправить в безопасное место.