enabling https
This commit is contained in:
@ -11,7 +11,12 @@
|
|||||||
"max_body": "50mb",
|
"max_body": "50mb",
|
||||||
"max_upload": 104857600,
|
"max_upload": 104857600,
|
||||||
"morgan": "combined",
|
"morgan": "combined",
|
||||||
"cors": "*"
|
"cors": "*",
|
||||||
|
"ssl": {
|
||||||
|
"enable": false,
|
||||||
|
"cert": "",
|
||||||
|
"key": ""
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"database": {
|
"database": {
|
||||||
"engine": "postgres",
|
"engine": "postgres",
|
||||||
|
|||||||
@ -11,7 +11,12 @@
|
|||||||
"max_body": "50mb",
|
"max_body": "50mb",
|
||||||
"max_upload": 104857600,
|
"max_upload": 104857600,
|
||||||
"morgan": "combined",
|
"morgan": "combined",
|
||||||
"cors": "*"
|
"cors": "*",
|
||||||
|
"ssl": {
|
||||||
|
"enable": true,
|
||||||
|
"cert": "/etc/letsencrypt/live/bri-dev.shiblysolution.id/fullchain.pem",
|
||||||
|
"key": "/etc/letsencrypt/live/bri-dev.shiblysolution.id/privkey.pem"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"database": {
|
"database": {
|
||||||
"engine": "postgres",
|
"engine": "postgres",
|
||||||
|
|||||||
15
src/index.ts
15
src/index.ts
@ -1,17 +1,28 @@
|
|||||||
import { Logger, ILogObj } from "tslog";
|
import { Logger, ILogObj } from "tslog";
|
||||||
import { app } from "./server";
|
import { app } from "./server";
|
||||||
import config from 'config'
|
import config from 'config'
|
||||||
|
import https from 'https';
|
||||||
|
import fs from 'fs';
|
||||||
|
|
||||||
|
|
||||||
const log: Logger<ILogObj> = new Logger({ name: '[Index]', type: 'pretty' });
|
const log: Logger<ILogObj> = new Logger({ name: '[Index]', type: 'pretty' });
|
||||||
|
|
||||||
const HOST = config.get('server.host')
|
const HOST = config.get('server.host')
|
||||||
const PORT = config.get('server.port')
|
const PORT = Number(config.get('server.port'))
|
||||||
|
|
||||||
const server = app.listen(Number(PORT), String(HOST), () => {
|
const server = app.listen(config.get('server.ssl.enable') ? PORT + 1000 : PORT, String(HOST), () => {
|
||||||
log.info(`Server ${config.get('app.name')} running on port http://${HOST}:${PORT}`);
|
log.info(`Server ${config.get('app.name')} running on port http://${HOST}:${PORT}`);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (config.get('server.ssl.enable')) {
|
||||||
|
const options = {
|
||||||
|
cert: fs.readFileSync(config.get('server.ssl.cert')),
|
||||||
|
key: fs.readFileSync(config.get('server.ssl.key'))
|
||||||
|
};
|
||||||
|
|
||||||
|
https.createServer(options, app).listen(PORT);
|
||||||
|
}
|
||||||
|
|
||||||
const onCloseSignal = () => {
|
const onCloseSignal = () => {
|
||||||
log.info("sigint received, shutting down");
|
log.info("sigint received, shutting down");
|
||||||
server.close(() => {
|
server.close(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user