egg-static

static server plugin for egg

Usage no npm install needed!

<script type="module">
  import eggStatic from 'https://cdn.skypack.dev/egg-static';
</script>

README

egg-static

NPM version build status Test coverage David deps Known Vulnerabilities npm download

Static server plugin for egg, base on koa-static-cache.

Install

egg-static is a plugin that has been built-in for egg. It is enabled by default.

Configuration

egg-static support all configurations in koa-static-cache. and with default configurations below:

  • prefix: '/public/'
  • dir: path.join(appInfo.baseDir, 'app/public')
  • dynamic: true
  • preload: false
  • maxAge: 31536000 in prod env, 0 in other envs
  • buffer: true in prod env, false in other envs

egg-static provides one more option:

  • maxFiles: the maximum value of cache items, only effective when dynamic is true, default is 1000.

All static files in $baseDir/app/public can be visited with prefix /public, and all the files are lazy loaded.

  • In non-production environment, assets won't be cached, your modification can take effect immediately.
  • In production environment, egg-static will cache the assets after visited, you need to restart the process to update the assets.
  • Dir default is $baseDir/app/public but you can also define multiple directory by use dir: [dir1, dir2, ...] or dir: [dir1, { prefix: '/static2', dir: dir2 }], static server will use all these directories.
// {app_root}/config/config.default.js
exports.static = {
  // maxAge: 31536000,
};

Questions & Suggestions

Please open an issue here.

License

MIT