Aplicación HTTPS Node.js en Heroku

He configurado mi enpoint SSL y puedo confirmar que está funcionando. Cuando entro en mi registro, veo lo siguiente:

Jul 13 08:14:10 support-dash app/web.1: Express server listening on port 17621 Jul 13 08:14:10 support-dash heroku/web.1: Stopping all processes with SIGTERM Jul 13 08:14:11 support-dash heroku/web.1: State changed from starting to up Jul 13 08:14:13 support-dash heroku/web.1: Process exited with status 143 Jul 13 08:15:48 support-dash heroku/router: at=error code=H12 desc="Request timeout" method=GET path=/ host=app.supportdash.com fwd="68.63.87.85" dyno=web.1 connect=2ms service=30000ms status=503 bytes=0 Jul 13 08:16:18 support-dash heroku/router: at=error code=H12 desc="Request timeout" method=GET path=/favicon.ico host=app.supportdash.com fwd="68.63.87.85" dyno=web.1 connect=2ms service=30007ms status=503 bytes=0 

Intenté rastrear algo de información sobre el código de salida 143 y por qué se están deteniendo todos los procesos. Echa un vistazo al siguiente archivo de servidor:

 var http = require('http'); var https = require('https'); var fs = require('fs'); var express = require("express"); var app = express(); app.set('port', process.env.PORT || 3000); app.use(express.logger()); app.get('/', function(request, response) { response.send('Hello World 2!'); }); var privateKey = fs.readFileSync(__dirname + '/ssl/server.key').toString(); var certificate = fs.readFileSync(__dirname + '/ssl/gandiSSL.pem').toString(); var options = { key: privateKey, cert: certificate }; https.createServer(options, app).listen(process.env.PORT, function () { console.log("Express server listening on port " + app.get('port')); }); 

Gracias por sus comentarios de antemano. Puedo proporcionar más detalles si es necesario.

—— SOLUCIÓN (EDITAR) ——-

Vea mi respuesta a continuación.

Encontré la respuesta aquí: Heroku Error H13 en ExpressJS Node HTTPS Server

“La terminación de SSL se produce en los balanceadores de carga de Heroku; envían el tráfico simple de su aplicación (no SSL), por lo que su aplicación debe crear un servidor que no sea HTTPS”.

Entonces cambié mi archivo a:

 var http = require('http'); var express = require("express"); var app = express(); app.set('port', process.env.PORT || 3000); app.use(express.logger()); app.get('/', function(request, response) { console.log('[support dash] processing get request') response.send('Hello World 2!'); }); app.listen(process.env.PORT, function () { console.log('***** exp listening on port: ' + process.env.PORT); }); 

Todo está funcionando muy bien no sobre https. ¡Buena suerte!