prerender-compressed-file-cache
Prerender plugin for caching in file system, to be used with the prerender node application from https://github.com/prerender/prerender.
Heavily inspired in suhanovv's rerender-file-cache (https://github.com/suhanovv/prerender-file-cache/) code, but this one compress the files so they take a lot less disk space.
How it works
This plugin will store all prerendered pages into a filesystem hierarchy but it can be configured to store the files in a custom way.
How to use
In your local prerender project run:
$ npm install prerender-compressed-file-cache --save
Then in the server.js that initializes the prerender:
// Default behavior server; // Example: // http://domain.com/?\_escaped\_fragment\_=/en/about - will be saved in **CACHE_ROOT_DIR**/en/about/\_\_\_// http://domain.com/?\_escaped\_fragment\_=/en/main/path/blah - will be saved in **CACHE_ROOT_DIR**/en/main/path/blah/\_\_\_ // If your cache strategy needs a different folder hierarchy use a custom path buildervar cache_config = /** * Example of custom path builder * @param key String the url of the resource being processed * @return path String folder path like '../', 'f1/f2/f3/.../' */ { var now = ; return processenvCACHE_ROOT_DIR + '/' + now now now; } // Custom file name fileName: '.cache'server; // Example assuming today is 03/03/2015// http://domain.com/?\_escaped\_fragment\_=/en/about - will be saved in **CACHE_ROOT_DIR**/2005-03-03/.cache
External Configuration
export CACHE_ROOT_DIR=/root/directory/for/cache
export CACHE_LIVE_TIME=10000 (in seconds)