@acastellon/connect-static

1.6.1 • Public • Published

static caching gzipping file server middleware for connect

When you create the middleware, it will immediately scan the requested directory, gzip all the files, and save the cache into memory, where it will forever remain. When a request hits the middleware it never touches the file system. If gzipping a file results in >= 95% of the file size of the original file size, connect-static discards the gzipped data and instead serves the file directly.

Are you looking for the middleware that used to ship with express and connect? That project is called serve-static

Supported HTTP Headers

  • ETag
  • If-None-Match
  • If-Modified-Since
  • Accept-Encoding
  • Content-Encoding

Usage

var createStatic = require('connect-static');

// These are all defaults. If you leave any options out, this is what they
// will be.
var options = {
  dir: "public",
  aliases: [
    ['/', '/index.html'],
  ],
  ignoreFile: function(fullPath) {
    var basename = path.basename(fullPath);
    return /^\./.test(basename) || /~$/.test(basename);
  },
  followSymlinks: true,
  cacheControlHeader: "max-age=0, must-revalidate",
};
createStatic(options, function(err, middleware) {
  if (err) throw err;
  app.use('/', middleware);
});

Readme

Keywords

none

Package Sidebar

Install

npm i @acastellon/connect-static

Weekly Downloads

0

Version

1.6.1

License

MIT

Unpacked Size

10.3 kB

Total Files

10

Last publish

Collaborators

  • acastellon