Update man pages

This commit is contained in:
Tatsuhiro Tsujikawa
2015-07-11 12:45:23 +09:00
parent c2e4ed9624
commit d62e4dbc5e
7 changed files with 144 additions and 10 deletions

View File

@@ -37,16 +37,65 @@ The options are categorized into several groups.
Connections
~~~~~~~~~~~
.. option:: -b, --backend=<HOST,PORT>
.. option:: -b, --backend=<HOST>,<PORT>[;<PATTERN>[:...]]
Set backend host and port. The multiple backend
addresses are accepted by repeating this option. UNIX
domain socket can be specified by prefixing path name
with "unix:" (e.g., unix:/var/run/backend.sock)
with "unix:" (e.g., unix:/var/run/backend.sock).
Optionally, if <PATTERN>s are given, the backend address
is only used if request matches the pattern. If :option:`-s`\, :option:`-p`\,
:option:`--client` or :option:`\--http2-bridge` is used, <PATTERN>s are
ignored. The pattern matching is closely designed to
ServeMux in net/http package of Go programming language.
<PATTERN> consists of path, host + path or just host.
The path must starts with "*/*". If it ends with "*/*", it
matches to the request path whose prefix is the path.
To deal with the request to the directory without
trailing slash, pattern which ends with "*/*" also matches
the path if pattern == path + "*/*" (e.g., pattern "*/foo/*"
matches path "*/foo*"). If it does not end with "*/*", it
performs exact match against the request path. If host
is given, it performs exact match against the request
host. If host alone is given, "*/*" is appended to it, so
that it matches all paths under the host (e.g.,
specifying "nghttp2.org" equals to "nghttp2.org/").
Longer patterns take precedence over shorter ones,
breaking a tie by the order of the appearance in the
configuration.
If <PATTERN> is omitted, "*/*" is used as pattern, which
matches all paths (catch-all pattern). The catch-all
backend must be given.
When doing a match, nghttpx made some normalization to
pattern, request host and path. For host part, they are
converted to lower case. For path part, percent-encoded
unreserved characters defined in RFC 3986 are decoded,
and any dot-segments (".." and ".") are resolved and
removed.
For example, :option:`-b`\'127.0.0.1,8080;nghttp2.org/httpbin/'
matches the request host "nghttp2.org" and the request
path "*/httpbin/get*", but does not match the request host
"nghttp2.org" and the request path "*/index.html*".
The multiple <PATTERN>s can be specified, delimiting
them by ":". Specifying
:option:`-b`\'127.0.0.1,8080;nghttp2.org:www.nghttp2.org' has the
same effect to specify :option:`-b`\'127.0.0.1,8080;nghttp2.org'
and :option:`-b`\'127.0.0.1,8080:www.nghttp2.org'.
The backend addresses sharing same <PATTERN> are grouped
together forming load balancing group. Since ";" and
":" are used as delimiter, <PATTERN> must not contain
these characters.
Default: ``127.0.0.1,80``
.. option:: -f, --frontend=<HOST,PORT>
.. option:: -f, --frontend=<HOST>,<PORT>
Set frontend host and port. If <HOST> is '\*', it
assumes all addresses including both IPv4 and IPv6.
@@ -550,6 +599,11 @@ Logging
* $alpn: ALPN identifier of the protocol which generates
the response. For HTTP/1, ALPN is always http/1.1,
regardless of minor version.
* $ssl_cipher: cipher used for SSL/TLS connection.
* $ssl_protocol: protocol for SSL/TLS connection.
* $ssl_session_id: session ID for SSL/TLS connection.
* $ssl_session_reused: "r" if SSL/TLS session was
reused. Otherwise, "."
Default: ``$remote_addr - - [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"``