1.7.5 • Published 6 years ago

static-http2-server v1.7.5

Weekly downloads
492
License
ISC
Repository
github
Last release
6 years ago

Stop bundling your css/js and enjoy HTTP2 and PUSH_PROMISE

npm version Build Status

http2-server

Simple HTTP2/SPDY server similiar to http-server using express & node-spdy

Installation

  sudo npm install -g static-http2-server

Naive PUSH_PROMISE

By default http2-server match static resources with their Referer header (for example '/') and will server push them coupled with response, when refered resource (e.g. index.html) would be requested next time

Usage

http2-server [path] [options]

  Options:

    -h, --help                        output usage information
    -V, --version                     output the version number
    -a, --address [127.0.0.1]         address to use
    -p, --ssl-port [4443]             ssl port to use
    --http-port [8080]                http port which redirects to ssl port
    -c, --cache                       enable cache
    -m, --maxAge [0]                  cache maxAge in ms acceptable string
        https://github.com/zeit/ms

    -P, --no-push                     disable naive PUSH_PROMISE
    -o, --open [xdg-open]             open default app after starting the server
        -o firefox
        -o "google-chrome --incognito"
        -o "curl --insecure"

    -l, --log [dev]                   log format (dev|combined|common|short|tiny)
        https://github.com/expressjs/morgan#predefined-formats

    -s, --silent                      suppress log messages from output
    --cors                            enable CORS
    -S, --no-ssl                      disable https
          Works as plain http server without http2, spdy, push_promise

    -e, --cert [certs/cert.pem]       path to ssl cert file
    -k, --key  [certs/key.pem]        path to ssl key file
    --generate-cert                   save autogenerated certificates and exit
    --trust-cert                      add certificate to trusted (currently linux only)
    -g, --compression                 enable deflate/gzip/brotli/zopfli
    -i, --index [index.html]          Specify index file name
    --proxy [https://127.0.0.1:4443]  Proxies all requests which can't be resolved locally to the given url.
    e.g.: -P http://someurl.com
    -I, --no-autoindex                Disable auto index
    --404                             404 error page

Usage as a dependency in your project

  npm install static-http2-server --save

package.json:

...
  "scripts": {
    "start": "node_modules/.bin/http2-server -o",
  },
...

SSL certificates

For development you can use autogenerated selfsigned certificates. For production you should use Let's encrypt or any other certificate authority

Generate selfsigned certificates and trust them

  http2-server --generate-cert --trust-cert

Add previously generated certificate to trusted

  http2-server --trust-cert --cert path/to/your.cert

Additionally you can try

letsencrypt-cli

1.7.5

6 years ago

1.7.4

6 years ago

1.7.3

6 years ago

1.7.2

7 years ago

1.7.1

8 years ago

1.7.0

8 years ago

1.6.3

8 years ago

1.6.2

8 years ago

1.6.1

8 years ago

1.6.0

8 years ago

1.5.7

9 years ago

1.5.6

9 years ago

1.5.5

9 years ago

1.5.4

9 years ago

1.5.3

10 years ago

1.5.2

10 years ago

1.5.1

10 years ago

1.5.0

10 years ago

1.4.1

10 years ago

1.3.6

10 years ago

1.3.5

10 years ago

1.3.4

10 years ago

1.3.1

10 years ago

1.3.0

10 years ago

1.2.0

10 years ago

1.1.1

10 years ago

1.1.0

10 years ago

1.0.7

10 years ago

1.0.6

10 years ago

1.0.5

10 years ago

1.0.3

10 years ago

1.0.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago