diff --git a/app.js b/app.js index 563535861..ae994f2a6 100644 --- a/app.js +++ b/app.js @@ -106,6 +106,18 @@ function checkRedis() { } checkRedis(); +if (fs.existsSync("./dist")) { + // serve static files without creating a bunch of sessions + app.use(express.static(__dirname + "/dist", { + maxAge: "2 days", + redirect: false, + index: false, + })); +} +else { + log.warn("no dist folder found"); +} + const session = require('express-session'); let RedisStore = require('connect-redis')(session); let sessionOpts = { @@ -172,11 +184,6 @@ app.use(bodyParser.urlencoded({ // to support URL-encoded bodies extended: true, })); -// Redirect urls with trailing slashes -app.get('\\S+/$', (req, res) => { - return res.redirect(301, req.path.slice(0, -1) + req.url.slice(req.path.length)); -}); - app.use((req, res, next) => { if (!req.path.startsWith("/api")) { next(); @@ -201,13 +208,7 @@ function serveBuiltFiles(req, res) { app.use("/api/user", usermanager.router); app.use("/api", api); if (fs.existsSync("./dist")) { - app.use(express.static(__dirname + "/dist", false)); - app.get("/", serveBuiltFiles); - app.get("/faq", serveBuiltFiles); - app.get("/rooms", serveBuiltFiles); - app.get("/room/:roomId", serveBuiltFiles); - app.get("/privacypolicy", serveBuiltFiles); - app.get("/quickroom", serveBuiltFiles); + app.get("*", serveBuiltFiles); } else { log.warn("no dist folder found"); diff --git a/package-lock.json b/package-lock.json index 8c6b5ddab..669e6155d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6280,12 +6280,6 @@ "pkg-up": "^2.0.0" } }, - "caniuse-lite": { - "version": "1.0.30001084", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001084.tgz", - "integrity": "sha512-ftdc5oGmhEbLUuMZ/Qp3mOpzfZLCxPYKcvGv6v2dJJ+8EdqcvZRbAGOiLmkM/PV1QGta/uwBs8/nCl6sokDW6w==", - "dev": true - }, "core-js": { "version": "3.6.5", "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.5.tgz", @@ -7617,12 +7611,6 @@ "node-releases": "^1.1.71" } }, - "caniuse-lite": { - "version": "1.0.30001223", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001223.tgz", - "integrity": "sha512-k/RYs6zc/fjbxTjaWZemeSmOjO0JJV+KguOBA3NwPup8uzxM1cMhR2BD9XmO86GuqaqTCO8CgkgH9Rz//vdDiA==", - "dev": true - }, "electron-to-chromium": { "version": "1.3.727", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.727.tgz", @@ -8956,12 +8944,6 @@ "node-releases": "^1.1.71" } }, - "caniuse-lite": { - "version": "1.0.30001223", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001223.tgz", - "integrity": "sha512-k/RYs6zc/fjbxTjaWZemeSmOjO0JJV+KguOBA3NwPup8uzxM1cMhR2BD9XmO86GuqaqTCO8CgkgH9Rz//vdDiA==", - "dev": true - }, "electron-to-chromium": { "version": "1.3.727", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.727.tgz", @@ -10813,9 +10795,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001027", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001027.tgz", - "integrity": "sha512-7xvKeErvXZFtUItTHgNtLgS9RJpVnwBlWX8jSo/BO8VsF6deszemZSkJJJA1KOKrXuzZH4WALpAJdq5EyfgMLg==" + "version": "1.0.30001228", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001228.tgz", + "integrity": "sha512-QQmLOGJ3DEgokHbMSA8cj2a+geXqmnpyOFT0lhQV6P3/YOJvGDEwoedcwxEQ30gJIwIIunHIicunJ2rzK5gB2A==" }, "capture-exit": { "version": "2.0.0", @@ -23652,12 +23634,6 @@ "node-releases": "^1.1.61" } }, - "caniuse-lite": { - "version": "1.0.30001223", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001223.tgz", - "integrity": "sha512-k/RYs6zc/fjbxTjaWZemeSmOjO0JJV+KguOBA3NwPup8uzxM1cMhR2BD9XmO86GuqaqTCO8CgkgH9Rz//vdDiA==", - "dev": true - }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",