diff --git a/node/minify.js b/node/minify.js index b6f6130f9..423741ca4 100644 --- a/node/minify.js +++ b/node/minify.js @@ -7,6 +7,7 @@ var pro = require("uglify-js").uglify; var path = require('path'); var Buffer = require('buffer').Buffer; var gzip = require('gzip'); +var server = require('./server'); /** * Answers a http request for the pad javascript @@ -201,7 +202,7 @@ exports.padJS = function(req, res) pathStr = path.normalize(__dirname + "/../var/minified_pad.js"); } - res.sendfile(pathStr); + res.sendfile(pathStr, { maxAge: server.maxAge }); }) } //minifying is disabled, so load the files with jquery diff --git a/node/server.js b/node/server.js index d9d109008..4cfb310b0 100644 --- a/node/server.js +++ b/node/server.js @@ -25,6 +25,8 @@ var path = require('path'); var minify = require('./minify'); var serverName = "Etherpad-Lite ( http://j.mp/ep-lite )"; +//cache a week +exports.maxAge = 1000*60*60*24*7; async.waterfall([ //initalize the database @@ -47,7 +49,7 @@ async.waterfall([ { res.header("Server", serverName); var filePath = path.normalize(__dirname + "/.." + req.url.split("?")[0]); - res.sendfile(filePath, { maxAge: 1000*60*60 }); + res.sendfile(filePath, { maxAge: exports.maxAge }); }); //serve minified files @@ -72,7 +74,7 @@ async.waterfall([ { res.header("Server", serverName); var filePath = path.normalize(__dirname + "/../static/pad.html"); - res.sendfile(filePath, { maxAge: 1000*60*60 }); + res.sendfile(filePath, { maxAge: exports.maxAge }); }); //serve index.html under / @@ -80,7 +82,7 @@ async.waterfall([ { res.header("Server", serverName); var filePath = path.normalize(__dirname + "/../static/index.html"); - res.sendfile(filePath, { maxAge: 1000*60*60 }); + res.sendfile(filePath, { maxAge: exports.maxAge }); }); //serve robots.txt @@ -88,7 +90,7 @@ async.waterfall([ { res.header("Server", serverName); var filePath = path.normalize(__dirname + "/../static/robots.txt"); - res.sendfile(filePath, { maxAge: 1000*60*60 }); + res.sendfile(filePath, { maxAge: exports.maxAge }); }); //serve favicon.ico @@ -96,7 +98,7 @@ async.waterfall([ { res.header("Server", serverName); var filePath = path.normalize(__dirname + "/../static/favicon.ico"); - res.sendfile(filePath, { maxAge: 1000*60*60 }); + res.sendfile(filePath, { maxAge: exports.maxAge }); }); //let the server listen