nghttpd (1) Linux Manual Page
nghttpd – HTTP/2 server
Synopsis
nghttpd [OPTION]… <PORT> [<PRIVATE_KEY> <CERT>]Description
HTTP/2 server- <PORT>
- Specify listening port number.
- <PRIVATE_KEY>
- Set path to server’s private key. Required unless –no-tls is specified.
- <CERT>
- Set path to server’s certificate. Required unless –no-tls is specified.
Options
- -a, –address=<ADDR>
- The address to bind to. If not specified the default IP address determined by getaddrinfo is used.
- -D, –daemon
- Run in a background. If -D is used, the current working directory is changed to ‘/‘. Therefore if this option is used, -d option must be specified.
- -V, –verify-client
- The server sends a client certificate request. If the client did not return a certificate, the handshake is terminated. Currently, this option just requests a client certificate and does not verify it.
- -d, –htdocs=<PATH>
- Specify document root. If this option is not specified, the document root is the current working directory.
- -v, –verbose
- Print debug information such as reception/ transmission of frames and name/value pairs.
- –no-tls
- Disable SSL/TLS.
- -c, –header-table-size=<SIZE>
- Specify decoder header table size.
- –color
- Force colored log output.
- -p, –push=<PATH>=<PUSH_PATH,…>
- Push resources <PUSH_PATH>s when <PATH> is requested. This option can be used repeatedly to specify multiple push configurations. <PATH> and <PUSH_PATH>s are relative to document root. See –htdocs option. Example: -p/=/foo.png -p/doc=/bar.css
- -b, –padding=<N>
- Add at most <N> bytes to a frame payload as padding. Specify 0 to disable padding.
- -m, –max-concurrent-streams=<N>
- Set the maximum number of the concurrent streams in one HTTP/2 session.
Default: 100
- -n, –workers=<N>
- Set the number of worker threads.
Default: 1
- -e, –error-gzip
- Make error response gzipped.
- –dh-param-file=<PATH>
- Path to file that contains DH parameters in PEM format. Without this option, DHE cipher suites are not available.
- –early-response
- Start sending response when request HEADERS is received, rather than complete request is received.
- –trailer=<HEADER>
- Add a trailer header to a response. <HEADER> must not include pseudo header field (header field name starting with ‘:’). The trailer is sent only if a response has body part. Example: –trailer ‘foo: bar’.
- –hexdump
- Display the incoming traffic in hexadecimal (Canonical hex+ASCII display). If SSL/TLS is used, decrypted data are used.
- –echo-upload
- Send back uploaded content if method is POST or PUT.
- –mime-types-file=<PATH>
- Path to file that contains MIME media types and the extensions that represent them.
Default: /etc/mime.types
- –no-content-length
- Don’t send content-length header field.
- –version
- Display version information and exit.
- -h, –help
- Display this help and exit.
The <SIZE> argument is an integer and an optional unit (e.g., 10K is 10 * 1024). Units are K, M and G (powers of 1024).
