falling back to HTTP if no certificate is found

This commit is contained in:
tpltnt
2022-10-25 21:41:42 +02:00
parent 794014a87f
commit c92cd9c090

View File

@@ -4,8 +4,9 @@ const path = require('path')
// if on glitch, force https
module.exports = (app) => {
var server
if(process.env.GLITCH) {
var http = require('http')
var http = require('http')
server = http.createServer(app)
function checkHttps(req, res, next){
@@ -19,11 +20,22 @@ module.exports = (app) => {
app.all('*', checkHttps)
} else {
var https = require('https')
var privateKey = fs.readFileSync(path.join(__dirname, '/certs/key.pem'), 'utf8')
var certificate = fs.readFileSync(path.join(__dirname, '/certs/certificate.pem'), 'utf8')
var credentials = {key: privateKey, cert: certificate}
server = https.createServer(credentials, app)
try {
var https = require('https')
var privateKey = fs.readFileSync(path.join(__dirname, '/certs/key.pem'), 'utf8')
var certificate = fs.readFileSync(path.join(__dirname, '/certs/certificate.pem'), 'utf8')
var credentials = {key: privateKey, cert: certificate}
server = https.createServer(credentials, app)
} catch (err) {
if (err.code === 'ENOENT') {
console.log("no TLS certificate at", err.path)
var http = require('http')
server = http.createServer(app)
} else {
throw err
}
}
}
return server
}