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 served -
rootPath
{string} optional rewrite path, (defaults to"/"
) -
notFoundFile
{string} optional default file to serve if requested static is missing -
log
{boolean} request access log to console -
last
{boolean} don't execute any downstream middleware. (defaults totrue
) -
maxage
Browser cache max-age in milliseconds. (defaults to0
) -
hidden
Allow transfer of hidden files. (defaults tofalse
) -
index
Name of the index file to serve automatically when visiting root location. (defaults to"index.html"
, use""
to disable) -
gzip
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 totrue
)
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
- mail - petar.koretic@gmail.com
MIT