static file serving middleware for koa with directory, rewrite and index support
$ npm install koa-static-server
var koa = require('koa')
var app = koa()
app.use(require('koa-static-server')(options))
rootDir
{string} directory that is to be servedrootPath
{string} optional rewrite pathnotFoundFile
{string} optional default file to serve if requested static is missinglog
{boolean} request access log to consolelast
{boolean} don't execute any downstream middleware. defaults to truemaxage
Browser cache max-age in milliseconds. defaults to 0hidden
Allow transfer of hidden files. defaults to falsegzip
Try to serve the gzipped version of a file automatically whengzip
is supported by a client and if the requested file with.gz
extension exists. defaults to true.
See examples for code examples
// example 'web' directory
// web/index.html
// web/file.txt
var serve = require('koa-static-server')
var app = require('koa')()
// root index support
// GET /
// returns index.html
// GET /file.txt
// returns file.txt
app.use(serve({rootDir: 'web'}))
// folder support
// GET /web/
// returns /web/index.html
// GET /web/file.txt
// returns /web/file.txt
app.use(serve({rootDir: 'web', rootPath: '/web'}))
// index support
// GET /
// returns /file.txt
app.use(serve({rootDir: 'web', index: 'file.txt'}))
// rewrite support
// GET /web/
// returns 404
// GET /admin
// returns /admin/index.html
app.use(serve({rootDir: 'web', rootPath: '/admin'}))
app.listen(3000)
console.log('listening on port 3000')
- Issues - open new issue
- IRC -
pkoretic
on freenode - mail - petar.koretic@gmail.com
MIT