1. koa-static-server
Static file serving middleware for koa with directory, rewrite and index support
koa-static-server
Package: koa-static-server
Created by: pkoretic
Last modified: Sun, 19 Jun 2022 09:30:16 GMT
Version: 1.5.2
License: MIT
Downloads: 5,438
Repository: https://github.com/pkoretic/koa-static-server

Install

npm install koa-static-server
yarn add koa-static-server

koa-static-server

GitHub license
NPM

static file serving middleware for koa with directory, rewrite and index support

Installation

 $ npm install koa-static-server

API

 var koa = require('koa')
var app = koa()
app.use(require('koa-static-server')(options))

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 to true)
  • maxage Browser cache max-age in milliseconds. (defaults to 0)
  • hidden Allow transfer of hidden files. (defaults to false)
  • 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 when gzip
    is supported by a client and if the requested file with .gz extension exists.
    (defaults to true)

Example

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')

Support

License

MIT

RELATED POST

Enhancing Vue.js Development: Harnessing the Potential of Vue-Loader

Enhancing Vue.js Development: Harnessing the Potential of Vue-Loader

Simplify Data Validation in Vue.js: A Step-by-Step Guide to Using Regex

Simplify Data Validation in Vue.js: A Step-by-Step Guide to Using Regex

Troubleshooting Made Easy: Common Issues and Solutions with vue-loader Without vue-cli

Troubleshooting Made Easy: Common Issues and Solutions with vue-loader Without vue-cli

Optimizing Webpack 4 with Vue CLI 3: Disabling the Cache-Loader

Optimizing Webpack 4 with Vue CLI 3: Disabling the Cache-Loader

Step-by-Step Guide: How to Add a Function to Your Vuex Plugin

Step-by-Step Guide: How to Add a Function to Your Vuex Plugin