Hapijs usando Http e Https em uma conexão
NovoHapijs e tentando usá-lo para criar um aplicativo que use HTTPS para todas as solicitações e redirecionar HTTP para a conexão segura.O problema é que o aplicativo entra no modo HTTPS sem problemas, mas se eu alterar o URL para HTTP, o servidor não responderá e não ' Não sei o motivo.
Isto é o que eu vim até agora, funciona, mas não para HTTP
var connectionOptions = {
port: 3000,
tls: {
key: fs.readFileSync(path.join(__dirname, 'key/key.pem'), 'utf8'),
cert: fs.readFileSync(path.join(__dirname, 'key/cert.pem'), 'utf8')
}
};
var server = new Hapi.Server();
server.connection(connectionOptions);
//This method not called when its HTTP
server.ext('onRequest', function (request, reply) {
if (request.headers['x-forwarded-proto'] === 'http') {
reply.redirect('https://' + request.headers.host +
request.url.path).code(301);
return reply.continue();
}
reply.continue();
});
var routes = require('./routes')(server);
server.route(routes);
if (!module.parent) {
server.start(function () {
console.log('Server running at:', server.info.uri);
});
}
Como forçar toda solicitação a ser HTTPS. Obrigado pela ajuda