trilium/src/routes/session_parser.ts
Panagiotis Papadopoulos 04827c0ce1 fix(session_parser): FileStore ttl should be ideally the same as session cookies maxAge
this avoids having "unused" dead session on the filesystem
2025-02-13 08:21:29 +01:00

25 lines
1007 B
TypeScript

import session from "express-session";
import sessionFileStore from "session-file-store";
import sessionSecret from "../services/session_secret.js";
import dataDir from "../services/data_dir.js";
import config from "../services/config.js";
const FileStore = sessionFileStore(session);
const sessionParser = session({
secret: sessionSecret,
resave: false, // true forces the session to be saved back to the session store, even if the session was never modified during the request.
saveUninitialized: false, // true forces a session that is "uninitialized" to be saved to the store. A session is uninitialized when it is new but not modified.
cookie: {
path: config.Session.cookiePath,
httpOnly: true,
maxAge: config.Session.cookieMaxAge
},
name: "trilium.sid",
store: new FileStore({
ttl: config.Session.cookieMaxAge / 1000, // needs value in seconds
path: `${dataDir.TRILIUM_DATA_DIR}/sessions`
})
});
export default sessionParser;