Static server plugin for egg, base on @eggjs/koa-static-cache.
@eggjs/static
is a plugin that has been built-in for egg. It is enabled by default.
@eggjs/static
support all configurations in @eggjs/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
@eggjs/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,
@eggjs/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 usedir: [dir1, dir2, ...]
ordir: [dir1, { prefix: '/static2', dir: dir2 }]
, static server will use all these directories.
// {app_root}/config/config.default.ts
export default {
static: {
// maxAge: 31536000,
},
};
Please open an issue here.
Made with contributors-img.