1NGHTTPD(1) nghttp2 NGHTTPD(1)
2
3
4
6 nghttpd - HTTP/2 server
7
9 nghttpd [OPTION]... <PORT> [<PRIVATE_KEY> <CERT>]
10
12 HTTP/2 server
13
14 <PORT> Specify listening port number.
15
16 <PRIVATE_KEY>
17 Set path to server's private key. Required unless
18 --no-tls is specified.
19
20 <CERT> Set path to server's certificate. Required unless
21 --no-tls is specified.
22
24 -a, --address=<ADDR>
25 The address to bind to. If not specified the default IP address
26 determined by getaddrinfo is used.
27
28 -D, --daemon
29 Run in a background. If -D is used, the current working direc‐
30 tory is changed to '/'. Therefore if this option is used, -d
31 option must be specified.
32
33 -V, --verify-client
34 The server sends a client certificate request. If the client
35 did not return a certificate, the handshake is terminated.
36 Currently, this option just requests a client certificate
37 and does not verify it.
38
39 -d, --htdocs=<PATH>
40 Specify document root. If this option is not specified, the
41 document root is the current working directory.
42
43 -v, --verbose
44 Print debug information such as reception/ transmission of
45 frames and name/value pairs.
46
47 --no-tls
48 Disable SSL/TLS.
49
50 -c, --header-table-size=<SIZE>
51 Specify decoder header table size.
52
53 --encoder-header-table-size=<SIZE>
54 Specify encoder header table size. The decoder (client) speci‐
55 fies the maximum dynamic table size it accepts. Then the
56 negotiated dynamic table size is the minimum of this option
57 value and the value which client specified.
58
59 --color
60 Force colored log output.
61
62 -p, --push=<PATH>=<PUSH_PATH,...>
63 Push resources <PUSH_PATH>s when <PATH> is requested. This
64 option can be used repeatedly to specify multiple push con‐
65 figurations. <PATH> and <PUSH_PATH>s are relative to
66 document root. See --htdocs option. Example: -p/=/foo.png
67 -p/doc=/bar.css
68
69 -b, --padding=<N>
70 Add at most <N> bytes to a frame payload as padding. Spec‐
71 ify 0 to disable padding.
72
73 -m, --max-concurrent-streams=<N>
74 Set the maximum number of the concurrent streams in one HTTP/2
75 session.
76
77 Default: 100
78
79 -n, --workers=<N>
80 Set the number of worker threads.
81
82 Default: 1
83
84 -e, --error-gzip
85 Make error response gzipped.
86
87 -w, --window-bits=<N>
88 Sets the stream level initial window size to 2**<N>-1.
89
90 -W, --connection-window-bits=<N>
91 Sets the connection level initial window size to
92 2**<N>-1.
93
94 --dh-param-file=<PATH>
95 Path to file that contains DH parameters in PEM format. With‐
96 out this option, DHE cipher suites are not available.
97
98 --early-response
99 Start sending response when request HEADERS is received, rather
100 than complete request is received.
101
102 --trailer=<HEADER>
103 Add a trailer header to a response. <HEADER> must not include
104 pseudo header field (header field name starting with ':'). The
105 trailer is sent only if a response has body part. Example:
106 --trailer 'foo: bar'.
107
108 --hexdump
109 Display the incoming traffic in hexadecimal (Canonical
110 hex+ASCII display). If SSL/TLS is used, decrypted data are
111 used.
112
113 --echo-upload
114 Send back uploaded content if method is POST or PUT.
115
116 --mime-types-file=<PATH>
117 Path to file that contains MIME media types and the exten‐
118 sions that represent them.
119
120 Default: /etc/mime.types
121
122 --no-content-length
123 Don't send content-length header field.
124
125 --ktls Enable ktls.
126
127 --no-rfc7540-pri
128 Disable RFC7540 priorities.
129
130 --version
131 Display version information and exit.
132
133 -h, --help
134 Display this help and exit.
135
136 The <SIZE> argument is an integer and an optional unit (e.g., 10K is 10
137 * 1024). Units are K, M and G (powers of 1024).
138
140 nghttp(1), nghttpx(1), h2load(1)
141
143 Tatsuhiro Tsujikawa
144
146 2012, 2015, 2016, Tatsuhiro Tsujikawa
147
148
149
150
1511.55.1 Jul 14, 2023 NGHTTPD(1)